我没能用cmake / android找到find_library,所以我写了这个简单的测试。
find_library(log-lib log
PATHS /Users/sam/Library/Android/sdk/ndk-bundle/platforms/android-21/arch-arm/usr/lib
NO_DEFAULT_PATH)
没关系。然后我将该lib目录复制到另一个位置。
find_library(log-lib log
PATHS /Users/sam/tmp/lib
NO_DEFAULT_PATH)
失败!我很确定我已经复制了整个lib目录。
有什么想法吗?提前谢谢。
答案 0 :(得分:3)
由于您是交叉编译的,因此必须告诉CMake
允许使用工具链指定以外的库(在您的情况下,Android SDK目录以外的地方)。
为此,您可以添加:
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE BOTH)
(在您的情况下,只有第一个是相关的)
更多信息here。