如何在KDevelop中设置编译器选项?

时间:2013-08-22 19:28:21

标签: c++ c++11 cmake compiler-flags kdevelop

我最近从使用code :: blocks开发到使用kdevelop进行开发。 (我厌倦了不稳定且无法设置键盘快捷键的代码块。)

据我了解,kdevelop使用cmake来控制源文件的构建......不确定原因,但是这就是决定的,所以我会忍受它。

我对cmake一无所知。我想这就像make?

我真正想知道的是如何将cmake设置为使用带有标记std=c++11的g ++。

根据这个stackoverflow question,我应该可以使用list(APPEND CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - 但我认为这可能只适用于make而不是cmake ......?

任何人都知道如何在kdevelop中设置编译器选项?也有人可以解释为什么使用cmake,而不是我之前遇到的大多数其他IDE。我猜这是有充分理由的。

1 个答案:

答案 0 :(得分:2)

我刚刚从KDevelop切换到QT Creator;我更喜欢后者,因为它更快,更稳定,并且具有非常好的代码和GUI设计工具。 QT Creator开设了各种各样的项目,包括CMake,qmake,最新的QT技术,GIT和SVN存储库。它也与valgrind很好地集成,这不是KDevelop功能。

以下是我在项目中使用的一些CMakeLists.txt变量,它们在两个IDE中都有效:

set(CMAKE_BUILD_TYPE "Debug" CACHE STRING "Build type")
set(CMAKE_CXX_FLAGS "--pedantic-errors -Wall -Wextra -Werror -ftabstop=4 -march=native -std=gnu++11 -fshow-column -ftabstop=4 -frounding-math -pipe ${FABIO_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS_DEBUG "-ggdb3 -DDEBUG")
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG")
set(FABIO_CXX_FLAGS "-Wall -Wextra -Werror -DFABIO_THREADS=2" CACHE STRING "C++ flags for the current directory")