我在 Linux Mint 上设置了 NetBeans 8.1编译 C/C++。一开始一切顺利,直到我尝试使用 C++14。
我将 C++ 的设置从 C++98 更改为 C++11。我修复的程序中有错误。我分心了,再次更改设置以使用 C++14。 g++
,或者至少我安装的版本不支持 C++14,所以我将它改回 C++11,但它仍然自行使用 C++14。我尝试将其更改为 C++11 并再次更改为 C++11,然后再次更改为 C++11。 C++11 肯定有效,因为我过去曾成功地使用过该标记。
这是构建日志:
cd '/home/.../NetBeansProjects/Sun Storm'
/usr/bin/make -f Makefile CONF=Debug
"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Entering directory `/home/.../NetBeansProjects/Sun Storm'
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux/sun_storm
make[2]: Entering directory `/home/.../NetBeansProjects/Sun Storm'
mkdir -p build/Debug/GNU-Linux
rm -f "build/Debug/GNU-Linux/main.o.d"
g++ -c -g -std=c++14 -MMD -MP -MF "build/Debug/GNU-Linux/main.o.d" -o build/Debug/GNU-Linux/main.o main.cpp
g++: error: unrecognized command line option ‘-std=c++14’
make[2]: *** [build/Debug/GNU-Linux/main.o] Error 1
make[2]: Leaving directory `/home/.../NetBeansProjects/Sun Storm'
make[1]: *** [.build-conf] Error 2
make[1]: Leaving directory `/home/.../NetBeansProjects/Sun Storm'
make: *** [.build-impl] Error 2
BUILD FAILED (exit value 2, total time: 76ms)
通过查看 g++ -c -g -std=c++14
,可以安全地假设 NetBeans 仍在使用 C++14,即使它已设置为使用 C++ 11.我怎样才能让 NetBeans 使用实际存在的设置而不是自己进行设置?
注意:我在 Internet 上找不到任何关于 NetBeans 不遵循给定设置的信息。
我还尝试停用 C/C++ 插件,重新启动 IDE,然后再次激活它。我还尝试安装 GNU Standard C++ Library v3。什么都没有改变。
最佳答案
您是否尝试过将“g++”调用更改为 devtoolset-2?
文件->项目属性->构建->工具集合->
单击版本,您将看到 Netbeans 使用的编译器
++++++++++++++++++++++++++++++++++++++++++++++++++++++
C 编译器:gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-17)
C++ 编译器:g++ (GCC) 4.8.2 20140120 (Red Hat 4.8.2-15)
Fortran 编译器:找不到工具
汇编程序:GNU 汇编程序版本 2.20.51.0.2-5.44.el6 20100205
制作工具:GNU Make 3.81
调试器:找不到工具
QMake 工具:找不到工具
CMake 工具:找不到工具
++++++++++++++++++++++++++++++++++++++++++++++++++++++
关于c++ - 如何让 NetBeans 使用 C++11,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38676507/