我使用CMake为稍后发出的make命令生成所有必需的文件。在CMake中,我可以将构建类型(和其他相关变量)设置为debug或-g,然后使用gdb在make生成后调试可执行文件。我的问题是:我可以将参数传递给make命令告诉它在调试或发布模式下编译而不必在CMake中设置吗?如果我想在编译期间经常在发布和调试之间切换,我需要继续回到CMake。如果我可以避免这种情况,那就太好了。 我希望这个问题很清楚。
由于
答案 0 :(得分:0)
您可以做的是使用一个源外系统,在该系统中您将使用具有不同cmake标志的2个不同的构建目录。想象一下你的目录结构如下:
source/CMakeLists.txt
build-release/
build/debug/
创建环境时,您会这样做:
build-release
中的
cmake ../source -DCMAKE_BUILD_TYPE=Release
build-debug
中的
cmake ../source -DCMAKE_BUILD_TYPE=Debug
然后,要在两种构建类型之间切换,您只需要更改目录并运行make。