差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
public:it:cmake [2021/04/27 08:36] – [Tips] oakfire | public:it:cmake [2024/09/03 14:06] (当前版本) – [CMake] oakfire | ||
---|---|---|---|
行 2: | 行 2: | ||
* Official Site: | * Official Site: | ||
* c++跨平台构建工具, | * c++跨平台构建工具, | ||
+ | * CMake [[https:// | ||
+ | * CMake 变量的作用域:[[https:// | ||
+ | * 父目录里的绑定变量默认会传到子目录的CMakefile作为初始值 | ||
+ | * find_package 默认支持的列表:'' | ||
===== Tips ===== | ===== Tips ===== | ||
* MSVC中, cmake 默认生成的 release 工程不生成 pdb 文件,可如下添加< | * MSVC中, cmake 默认生成的 release 工程不生成 pdb 文件,可如下添加< | ||
行 127: | 行 130: | ||
target_link_libraries(c ab) # 此时 c 工程就包含了a.lib, | target_link_libraries(c ab) # 此时 c 工程就包含了a.lib, | ||
</ | </ | ||
- | * [[https:// | + | * [[https:// |
- | * 如果源文件(例如CPP)中包含第三方头文件,但是头文件(例如hpp)中不包含该第三方文件头,采用PRIVATE。 | + | * 如果源文件包含该第三方头文件,但头文件中不包含该第三方头文件,采用 PRIVATE; |
- | * 如果源文件和头文件中都包含该第三方文件头,采用PUBLIC。 | + | * 如果源文件和头文件中都包含该第三方头文件,采用 PUBLIC; |
- | * 如果头文件中包含该第三方文件头,但是源文件(例如CPP)中不包含,采用 INTERFACE。 | + | * 如果头文件中包含该第三方头文件,但源文件中不包含,采用 INTERFACE。 |