【发布时间】:2014-11-18 00:31:21
【问题描述】:
由于我无法从发布版本更改为调试版本类型,我想知道我做错了什么。我正在使用 Unix Makefiles。
在 docs.biicode.com/c++/building.html 中说明了如何在 CMakeLists.txt 中添加 SET() 将变量添加到 cmake。
我是 cmake 和 biicode 的新手,我尝试了所有方法:
ADD_DEFINITIONS(-DCMAKE_BUILD_TYPE=Debug)
ADD_DEFINITIONS(-DCMAKE_BUILD_TYPE:STRING=Debug)
SET(CMAKE_BUILD_TYPE Debug)
target_compile_options(my_program PUBLIC $<$<CONFIG:Debug>:-Werror>)
但是 gdb 说“没有找到调试符号”。
另一种方式,如bii --help cpp 所述,传递给 cpp:build 参数,这些参数将传递给 cmake,但调用
bii cpp:build -DCMAKE_BUILD_TYPE=Debug
产量
Building: cmake --build . -DCMAKE_BUILD_TYPE=Debug
Unknown argument -DCMAKE_BUILD_TYPE=Debug
但是直接调用
cmake -DCMAKE_BUILD_TYPE=Debug --build .
工作正常,我不知道如何更改bii cpp:build 命令中的顺序。
这一切是误解、语法错误,还是一定有其他问题?在 Debug 和 Release 之间进行更改的最佳位置是什么?
【问题讨论】:
-
SET(CMAKE_BUILD_TYPE Debug)不要这样设置构建类型,请参阅stackoverflow.com/questions/24460486/…