[英]Cmake: make static library and use in other projects
我需要進行庫test
並通過#include <libraryname>
在其他項目中使用它
在項目test
:
的CMakeLists.txt
... add_library(libtest STATIC lib.h lib.cpp) set_target_properties(libtest PROPERTIES PUBLIC_HEADER lib.h) install(TARGETS libtest PUBLIC_HEADER DESTINATION include RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) ...
在項目testUseLibrary
:
的CMakeLists.txt
... add_executable(project main.cpp) target_link_libraries(project PUBLIC libtest) ...
main.cpp中
#include <libtest> // error
int main() {
return 0;
}
在項目testUseLibrary
#include<libtest>
中沒有看到庫。
您需要使用target_include_directories
來指定目標的包含目錄。 在這種情況下,libtest所在的目錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.