我一直收到一个
根忍者:错误:‘/
/code/CalcLib/libCalcLibAndroidx86.a’,缺少root所需且没有已知的规则来创建它
尽管我检查了包含正确文件的两个目录是否存在,并且我相信我已经在CmakeList.txt中正确设置了包含目录路径。
CMakeLists.txt
cmake_minimum_required(VERSION 3.4.1)
set(
P1 "/root/code/CalcLib"
CACHE STRING ""
)
message(${ANDROID_ABI})
file(GLOB CPP_FILES "*.cpp")
add_library(
JumboFFT
SHARED
${CPP_FILES}
)
include_directories(src/main/jni)
include_directories(${P1})
target_link_libraries(
JumboFFT
log
android
OpenSLES
${P1}/libCalcLibAndroid${ANDROID_ABI}.a
)
Gradle Assemble Gradle Asemble output text
发布于 2018-07-06 04:04:51
set_target_properties
在cmake中不喜欢相对路径
查看此处:cmake:missing and no known rule to make it when I import a prebuilt library
发布于 2018-03-15 07:10:42
我认为您应该首先使用add_library
和set_target_properties
将其添加为库,然后按如下方式链接它:
...
add_library(libCalcLibAndroid STATIC IMPORTED)
set_target_properties(libCalcLibAndroid PROPERTIES
IMPORTED_LINK_INTERFACE_LIBRARIES ""
IMPORTED_LOCATION "${P1}/libCalcLibAndroid${ANDROID_ABI}.a"
)
target_link_libraries(
JumboFFT
log
android
OpenSLES
libCalcLibAndroid
)
https://stackoverflow.com/questions/49286725
复制相似问题