我使用的是Ubuntu 12.04,默认gcc是4.6.3。它不接受C++ 11的命令,并给我输出说这个命令不是C++ 98兼容的。我在网上查了一下,看到有人建议不要在操作系统上更改默认编译器,因为它变得不稳定。任何人都可以建议下载符合C++ 11的gcc编译器的修复方法或安全方式。如何将gcc编译器更改为ubuntu上的C++ 11
回答
gcc 4.6.3 supports many c++11 features。但是,它们默认是禁用的。要启用它们,请使用以下标志:
g++ -std=c++0x ...
此标志还禁用GNU扩展;要使它们保持启用状态,请使用-std=gnu++0x
标志。
所以我需要输入命令编译为g ++ -o可执行文件filename.cc -std = C++ 0x是吗? –
@talasila正确。你可能要考虑将gcc升级到4.8,[它有更好的C++ 11支持](http://gcc.gnu.org/gcc-4.8/cxx0x_status.html)。 – dasblinkenlight
如何将我的默认编译器更新为新的编译器。为什么人们说不要在操作系统中删除现有的gcc版本,因为它会导致系统不稳定?这是真的吗? –
正如其他人所建议的,您需要输入std命令行选项。让我们很容易让你
-
按
按Ctrl +
Alt键 +
牛逼
- 打开终端
sudo gedit ~/.bashrc
输入以下命令行作为最后一行
alias g++="g++ --std=c++0x"
- 保存并关闭文件并关闭终端。
- 现在打开终端再次和
g++ filename.cpp
这就是它编译C++程序11简单。默认情况下,它将编译为C++ 11标准。
注:如果你按照上面提到的选项,编译非C++ 11名的程序,你必须使用
g++ --std=c++98 filename.cpp
好的。谢谢。但是在最后一个注释中,您提到要编译非C++ 11程序,请更改命令。但并非每个版本都向后兼容。因此,C++ 11编译器应该编译甚至没有C++ 11特定命令的程序。 –
- 1. Android GCC编译器更改
- 2. 如何在Eclipse IDE中将编译器从C更改为C++?
- 3. 在Ubuntu上编译GCC 6.1 16.04
- 4. 在Ubuntu上编译darwin的步骤gcc
- 5. Ubuntu上的gcc编译问题13.04
- 6. 关于ubuntu gcc编译器的问题
- 7. Ubuntu的GCC编译错误
- 8. 编译C++ ubuntu上
- 9. Windows上的Matlab:将'mex'默认编译器更改为Cygwin的GCC
- 10. Ubuntu编译器(C++)
- 11. 如何更改编译器在Xcode C++
- 12. 如何更改GCC编译器的目标目录?
- 13. C++ 11:编译器何时将{}视为std :: initializer_list,何时不会?
- 14. 更改编译C编译器
- 15. 最小GCC C++编译器
- 16. GNU GCC编译器更新
- 17. C++编译器标志11
- 18. C++编译器g ++ 11
- 19. 如何使用GCC将C代码编译为8088汇编?
- 20. C++编译C++ 11
- 21. 如何用GCC编译Objective-C代码?
- 22. 如何为C++ 11设置我的g ++编译器?
- 23. 如何更改默认的GCC编译器以便在Linux上使用MPI CentOS
- 24. 如何在Ubuntu上为POCO编译SQLite?
- 25. GCC 4.7/4.8作为Xcode的C/C++编译器
- 26. 如何将ubuntu更改为root?
- 27. 如何用C++编译c复数11
- 28. 如何在visual studio 2010 express版上启用C++ 11编译器?
- 29. 如何在Vista x64上卸载Intel C++编译器(ICC)11?
- 30. 编写一个修改gcc c编译器的bash脚本
'G ++ -std = C++ 11'或者如果没有work,'g ++ -std = C++ 0x' – jxh
您可以随系统安装另一个版本的GCC。你甚至可以自己编译另一个版本。网络中有很多教程 - 只需使用您的首选搜索引擎即可。 GCC通常将其可执行文件后缀为版本号,并将其特定库安装在版本化目录中,以便新版本不会与系统提供的版本冲突。 –