我和CMake有一个奇怪的问题.
我正在将Curl导入到我的项目中,所以我为您编写了一个简单的CMakeLists.txt文件摘要.
ADD_LIBRARY(libcurl SHARED IMPORTED )
SET_PROPERTY(TARGET libcurl PROPERTY IMPORTED_LOCATION ../lib/libcurl.lib)
当我运行CMake时,它会为MS VC++生成项目文件(也适用于Linux).然后进入项目文件,我发现curl库(libcurl-NOTFOUND)的错误引用!
如果我将我的代码更改为静态导入:
ADD_LIBRARY(libcurl STATIC IMPORTED )
SET_PROPERTY(TARGET libcurl PROPERTY IMPORTED_LOCATION ../lib/libcurl.lib)
我找到了对../lib/libcurl.lib的正确引用.
你知道为什么会这样吗?
非常感谢你!
Rei*_*ica 16
对于共享库,IMPORTED_LOCATION必须指向DLL,而不是导入lib.请参阅文档.您可能还想设置IMPORTED_IMPLIB属性.
顺便说一下,CMake还有一个针对Curl 的查找包 ; 也许你可以使用它?
| 归档时间: |
|
| 查看次数: |
9690 次 |
| 最近记录: |