Почему Android Studio компилирует C ++ в ARMv7, если мой телефон ARMv8? - PullRequest
0 голосов
/ 21 июня 2020

У меня есть телефон Mi 9 с процессором SnapDragon 855, который, насколько я могу судить, запускает ARMv8.

Я создал простой проект C ++ NDK в Android Studio и попытался связать библиотека, скомпилированная для aarch64, которая является ARMv8, однако она жалуется, потому что пытается скомпилировать для ARMv7.

Я думаю, ARMv7 может работать на ARMv8, но почему он это делает? Можно ли принудительно выполнить компиляцию ARMv8? У меня только версия библиотеки ARMv8.

Ответы [ 2 ]

1 голос
/ 05 июля 2020

Решение можно объяснить на https://developer.android.com/ndk/guides/abis

1 голос
/ 21 июня 2020

измените build.gradle следующим образом:

defaultConfig {

    ndk {
        abiFilters 'arm64-v8a'
    }
}
...