android find_library上的cmake无法找到自定义路径

时间:2017-09-05 12:50:19

标签: android cmake find

我没能用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目录。

有什么想法吗?提前谢谢。

1 个答案:

答案 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