【发布时间】:2019-10-27 04:08:19
【问题描述】:
我正在为一个使用 CMake 的大型 C++ 项目而苦苦挣扎。 现在我正在尝试添加一个依赖项(一个预编译和安装的库),但我不确定添加的位置、包含的内容以及链接的位置。
特别想知道以下命令的区别:
include_directoriestarget_include_directorieslink_librariestarget_link_libraries
另外,当我需要使用以下命令时:
-
find_package和 add_library
我知道它与仅标头库等有关,但我找不到易于理解和简洁的解释。
另外,我应该如何处理以下情况:
包含的库需要例如 Boost,但核心项目不需要。如何避免膨胀整个 CMakeLists.txt 文件和二进制文件,并且仍然使用预编译库? (我认为这也是这个问题的一部分)
【问题讨论】:
-
单个帖子中的问题太多。例如。
include_directories和target_include_directories之间的区别可以在该问题中找到:stackoverflow.com/questions/31969547/…