我在CMake中使用了CLion。我有自己的静态库" libxxx.a"。
我试图在CMakeLists.txt中以这种方式链接它:
target_link_libraries(myProject ./lib/libxxx.a)
这样我就可以将库包含到我的main.cpp中。
#include "xxx.h"
。
但我有错误fatal error: xxx.h: No such file or directory
。
我该怎么办?
答案 0 :(得分:0)
作为草图,你需要你的项目看起来像这样
project( myProject )
set( SOURCE_FILES main.cpp )
add_library( myLibrary STATIC IMPORTED )
set_property( TARGET myLibrary PROPERTY IMPORTED_LOCATION /path/to/lib/libxxx.a )
include_directories( /path/to/headers/ )
add_executable( myProject ${SOURCE_FILES} )
target_link_libraries( myProject myLibrary )
您可以将include_directories
替换为:
set_property( TARGET myLibrary PROPERTY INCLUDE_DIRECTORIES /path/to/headers/ )
更好的方法是从源代码编译静态库,然后使用
target_include_directories( myLibrary PUBLIC /path/to/headers/ )
然后他们会自动处理。