3

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

据我了解,kdevelop 使用 cmake 来控制源文件的构建......不太清楚为什么,但好吧,这就是决定的,所以我会接受它。

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

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

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

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

4

1 回答 1

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")
于 2013-08-22T19:38:40.417 回答