在GCC编译的项目中
- 如何为每个目标类型(调试/发布)运行CMake
- 如何使用CMake指定调试和发布C/C++标志
- 如何表示主可执行文件将使用
g++和一个带有gcc的嵌套库进行编译
对于CMake,通常建议进行“源代码外”构建。在项目的根目录中创建CMakeLists.txt。然后从项目的根目录:
mkdir发行版
光盘发行
cmake-DCMAKE\u BUILD\u TYPE=发布。。
制作
对于Debug(再次从项目的根目录开始):
mkdir调试
cd调试
cmake-DCMAKE\u BUILD\u TYPE=Debug。。
制作
Release/Debug将为编译器添加适当的标志。还有RelWithDebInfo和MinSizeRel构建配置
您可以通过指定一个工具链文件来修改/添加标志,在该文件中可以添加CMAKE\u<;朗>_旗帜<;配置>_初始化变量,例如:
设置(CMAKE\u CXX\u标志\u调试\u初始化“-Wall”)
设置(CMAKE_CXX_标志_发布_初始”-墙)
有关更多详细信息,请参阅CMAKE_构建_类型
至于你的第三个问题,我不确定你到底在问什么。CMake应该自动检测并使用适合不同源文件的编译器