Кросс-компиляция библиотеки c ++ для Android в OSX с использованием CMAKE - PullRequest
0 голосов
/ 18 апреля 2020

Попытка скомпилировать эту библиотеку c ++ для использования в приложении Android:

https://github.com/HBPVIS/Servus

в моем make-файле (аналогично тому, как я скомпилировал для iOS):

cd build && /Users/code/Library/Android/sdk/cmake/3.6.4111459/bin/cmake -GAndroid\ Gradle\ -\ Ninja \.. \
-DCMAKE_TOOLCHAIN_FILE=/Users/code/Library/Android/sdk/ndk-bundle/build/cmake/android.toolchain.cmake \
-DCMAKE_ANDROID_ARCH_ABI=armeabi-v7a \
-DANDROID_ABI=armeabi-v7a \
-DCMAKE_MAKE_PROGRAM=/Users/code/Library/Android/sdk/cmake/3.6.4111459/bin/ninja \
-DANDROID_NDK=/Users/code/Library/Android/sdk/ndk-bundle \
-DANDROID_NATIVE_API_LEVEL=29 \
-DANDROID_TOOLCHAIN=clang \
-DCMAKE_BUILD_TYPE=Debug \
cd build && ninja

Кажется, это работает, и я вижу libServus.a в моей папке сборки.

Однако в Android Studio, хотя он находит библиотеку stati c при построении я получаю

error: undefined reference to 'servus::Servus::removeListener(servus::Listener*)'

и т. д., поэтому что-то явно пошло не так.

Любые указатели будут высоко оценены.

OSX 10.14.16

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...