android - Android NDK:CMAKE 如何将 IMPORTED 共享库移动到 libs 文件夹
问题描述
我有一个构建的 Android NDK 项目,libMyProject1.so
我正在使用:
set_target_properties(MyProject1
PROPERTIES
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../Client/libs/${ANDROID_ABI}")
将构建的库导出到我需要的文件夹。
我还有另一个与我链接的外部共享库:
我的外部图书馆
add_library(MyExternal SHARED IMPORTED)
set_target_properties(MyExternal PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../MyExternal/libs/${ANDROID_ABI}/libMyExternal.so)
target_link_libraries( # Specifies the target library.
MyProject1
# Shared Dependencies
MyExternal
# Links the target library to the log library
# included in the NDK.
${log-lib})
libMyProject1.so
被复制到Client/libs/${ANDROID_ABI}
但libMyExternal.so
不被复制。如何使用 cmake 将外部共享库复制到我的客户端文件夹?
解决方案
正如评论中所建议的,以下内容对我有用:
file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/../MyExternal/libs/${ANDROID_ABI}/libMyExternal.so
DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/../Client/libs/${ANDROID_ABI})
推荐阅读
- database - Dexie:如何获取 MultiEntry Index 的所有值?
- python - 我如何解决 Windows 10 的这个 ildoonet / tf-pose-estimation 安装问题
- python - 用户输入后循环通过csv文件提取信息
- python - 没有抛出错误,python 创建空白文件,不知道如何排除故障
- elm - Elm:自定义类型的访问值
- c++ - COM 代理服务器超时
- python - python中多处理,异步和concurrency.futures之间的区别
- plugins - WebSocket 网络插件 Unreal Engine v4.22.3
- php - Vanilo Laravel 7 错误 403 - 在 http://127.0.0.1:8000/admin/customer 中被禁止
- python - sqlite3 正则表达式确实匹配反字符类