我用C ++编写代码并通过键入make
对其进行编译。发生错误:
/ usr / include / c ++ / 4.8 / bits / c ++ 0x_warning.h:32:2:错误:#error这 文件需要ISO C ++ 2011的编译器和库支持 标准。此支持目前是实验性的,必须启用 使用-std = c ++ 11或-std = gnu ++ 11编译器选项。
答案 0 :(得分:1)
你需要添加" -std = c ++ 11"到你的编译器参数,告诉它它是一个C ++ 11编译
$ g++ -std=c++11 your_file.cpp -o your_program
如果您使用的是某些IDE,则需要搜索文档以了解如何添加此行以便编译器知道。
答案 1 :(得分:1)
随机库使用的是较新版本的C ++标准(C ++ 11)。您需要修改makefile以使用-std = c ++ 11标志。如果您发布了makefile内容,我可以进一步建议您,否则请查看以下问题:Makefile modification to support c++11
根据发布的cmakefile,将这些行添加到您的cmakefile:
set_property(TARGET abc PROPERTY CXX_STANDARD 11)
set_property(TARGET abc PROPERTY CXX_STANDARD_REQUIRED ON)