在NDK19上链接ACE静态库时不受支持的动态重定位r_arm_rel32错误

时间:2019-04-10 23:56:06

标签: android cmake android-ndk ace

尝试将旧版应用程序从NDK 16移植到NDK 19时遇到很多麻烦。问题是此应用程序是在ACE C ++库的顶部构建的,该库使用静态库导入作为静态库链接在CMakeLists.txt文件上。

以与https://github.com/googlesamples/android-ndk/blob/master/hello-libs/app/src/main/cpp/CMakeLists.txt示例相同的方式配置CMakeLists文件:

add_library(lib_ace STATIC IMPORTED)
set_target_properties(lib_ace PROPERTIES IMPORTED_LOCATION
    ${distribution_DIR}/libACE.a)

然后是蚂蚁

target_link_libraries(myProjectLib
                  android
                  lib_ace
                  ... many other libs ...
                  log)

http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html#android

我创建了独立的工具链,并按照给定链接上ACE网站上的说明正确构建了ACE库。

但是当我尝试将ACE静态库链接到我在Android Studio上的项目jni C ++动态库时,ninja-build抱怨:“不支持的动态重定位r_arm_rel32”

如果有人知道同时使用ACE和Android的任何当前开源项目或示例,请提供链接! 感谢您的帮助!

0 个答案:

没有答案