如何修复CMake CMP0018警告
How to fix CMake CMP0018 warning?
我使用CMake 2.8.12.2
来构建我的项目(在Mac中),该项目包含以下两个模块:
project
|
|____ module_a
|
|____ module_b
当module_a
和module_b
被构建为STATIC
库时,当cmake
project
时没有警告。但是,如果我将模块更改为SHARED
库,我会遇到警告:
Variable CMAKE_SHARED_LIBRARY_C_FLAGS has been modified. CMake will ignore
the POSITION_INDEPENDENT_CODE target property for shared libraries and will
use the CMAKE_SHARED_LIBRARY_C_FLAGS variable instead. This may cause
errors if the original content of CMAKE_SHARED_LIBRARY_C_FLAGS was removed.
Policy CMP0018 is not set: Ignore CMAKE_SHARED_LIBRARY_<Lang>_FLAGS
variable. Run "cmake --help-policy CMP0018" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
这对我来说毫无意义,因为我从未处理过CMAKE_SHARED_LIBRARY_C_FLAGS
。
如何修复此警告?我不喜欢忽略它。
您可以使用cmake_policy
命令来选择所需的策略。
相关文章:
- 警告处理为错误这里有什么问题
- 使用动态分配的数组会导致代码分析发出虚假的C6386缓冲区溢出警告
- cppcheck在const std::string[]上引发警告
- GCC对可能有效的代码抛出init list生存期警告
- 如何在BST的这个简单递归实现中消除警告
- 关于std::move的使用,是否有编译警告
- g++ 在某个类成员未初始化时不发出警告
- 如何处理来自核心指南检查器的关于gsl::at的静态分析警告
- 使用typeid警告未使用的变量
- 示例C++项目编译中的警告
- 警告:在函数返回类型 [-Wignore 限定符] 时忽略类型限定符
- 如何修复编译器警告 C6386 和 C6385?
- 返回语句后的代码,没有警告
- 获取隐式转换溢出从无符号到已签名的警告
- 编译器警告:执行到达值返回函数的末尾而不返回值
- 在未链接的部分上生成警告
- 警告 C4552:">>":未使用表达式的结果
- 禁止显示由于常量为零而比较始终为假的警告
- C++ 警告:将新创建的 gsl::owner<> 分配给非所有者
- 如何修复CMake CMP0018警告