【发布时间】:2014-06-26 15:25:33
【问题描述】:
我已从 Eclipse 和 Code::Blocks 切换,想知道如何将 Kdevelop 中的项目设置为 c++11 模式 (std=c++11)
【问题讨论】:
我已从 Eclipse 和 Code::Blocks 切换,想知道如何将 Kdevelop 中的项目设置为 c++11 模式 (std=c++11)
【问题讨论】:
由于评论太大,我将其发布为答案。
KDevelop 对其项目使用外部构建系统,因此您始终可以找到并编辑 make/cmake/whatevermake 以将 -std=c++11 添加到编译命令中。它没有任何内部或选项来设置它,至少对于基于 CMake 的东西 AFAIK。我必须将SET(CMAKE_CXX_FLAGS "-std=c++1y") 添加到CMakeLists.txt,但是我不确定这是否满足您的需求。
也许正如您所指出的,最佳实践是在CMakeLists.txt:SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") 的某个点将命令附加到当前标志。
另外,您也可以从 KDevelop 菜单中进行基本相同的操作。当你进入 Project -> Open Configuration 时,在左侧面板中你应该有 CMake 和 Make。
对于 CMake,您可以单击 显示高级,然后选中显示高级值,然后会显示项目配置的缓存值列表。您可以在那里找到CMAKE_CXX_FLAGS 并在其中添加-std=c++1y。
我没有充分使用 make 实用程序来了解是否可以使用那里提供的选项来完成。
我也不认为 KDevelop 中有任何更智能的东西可以让它更便携,例如不同编译器之间。
选项:
对话框:
【讨论】:
4.6.60,我有这个选项。我添加了图片。当然,如何设置 CMAKE_CXX_FLAGS 来添加此选项取决于您。我展示了如何设置标志,您附加-std=c++11。也许我应该让它更详细,但这只是一个例子。我包含了这个建议。