例如我在一个函数中写出:
#if DEBUG
DEBUGRUN(TIME);
#else
RUN(TIME);
#endif
我需要在 DEBUG
模式下通过使用 DEBUGRUN()
函数来获取输出,但是CMAKE不知道自己是不是在 DEBUG
的模式下。
要解决这个问题,只需要在 CMakeLists.txt
中定义即可:
if (CMAKE_BUILD_TYPE STREQUAL Debug)
ADD_DEFINITIONS(-DDEBUG)
endif ()
其中 CMAKE_BUILD_TYPE
是通过 cmake -DCMAKE_BUILD_TYPE=Debug .
来定义的,在CLion中已经通过 Build -> CMake
选项自动设置了。
这样再运行可执行文件时就会执行 DEBUGRUN
函数了。如果不希望使用 DEBUGRUN
函数,只需将Debug改为Release即可:
cmake -DCMAKE_BUILD_TYPE=Release .