【发布时间】:2015-12-23 15:35:32
【问题描述】:
我想从 ZIP 文件中提取一个静态库并链接到它。
具有以下设置:
add_library(COMSDK_LIB STATIC IMPORTED GLOBAL)
set_property(TARGET COMSDK_LIB PROPERTY IMPORTED_LOCATION "/tmp/lib/libRTSClientSdk.a")
而导入的库正在另一个CMakeLists.txt中使用:
target_link_libraries(mylib COMSDK_LIB)
会不会是导入的库是由另一个add_custom_command或add_custom_target生成的?
我尝试了以下方法,但它确实不工作:
add_custom_command(
OUTPUT "/tmp/lib/libRTSClientSdk.a"
COMMAND unzip -x client_sdk.zip -o /tmp
DEPENDS client_sdk.zip
)
给定的错误信息是:
$ ninja
ninja: error: '/tmp/lib/libRTSClientSdk.a', needed by 'mylib.dll', missing and no known rule to make it
【问题讨论】:
标签: cmake shared-libraries static-libraries