首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使忍者错误的机器人。尽管文件存在,但“缺少且没有任何已知的规则来创建它”

使忍者错误的机器人。尽管文件存在,但“缺少且没有任何已知的规则来创建它”
EN

Stack Overflow用户
提问于 2018-03-15 04:01:37
回答 2查看 16.6K关注 0票数 5

我一直收到一个

根忍者:错误:‘/

/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

EN

回答 2

Stack Overflow用户

发布于 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

票数 2
EN

Stack Overflow用户

发布于 2018-03-15 07:10:42

我认为您应该首先使用add_libraryset_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
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49286725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档