编译安装报错unrecognized command line option “-std=c++11” 无法识别的命令行选项“-std=c++11” 的解决办法

原文转自 https://www.landui.com/help/show-7594

 

    我们在使用linux系统编译安装报错unrecognized command line option “-std=c++11” 无法识别的命令行选项“-std=c++11” 的提示。出现这个编译错误的原因在g++ gcc 版本不够高。
解决方法:
    更新gcc版本默认一般情况是4.4.7版本的gcc
命令查看:

#gcc -v


更新方法

1、下载压缩包进行编译安装

    http://ftp.gnu.org/gnu/gcc/
    这里是官网提供的下载地址
image.png

    下面开始下载解压

wget  
tar -jxvf gcc-4.8.2.tar.bz2

image.png

2、下载供编译需求的依赖项

    这个神奇的脚本文件会帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。

cd gcc-4.8.0
./contrib/download_prerequisites

3、建立一个文件夹

mkdir gcc-build-4.8.2
cd gcc-build-4.8.2

4、生成Makefile文件

../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

5、编译安装

make && make intsall

6、检验
image.png

尝试写一个C++11特性的程序段 tryCpp11.cc,使用了shared_ptr

 1 //tryCpp11.cc 
 2 #include <iostream> 
 3 #include <memory> 
 4  
 5 int main() 
 6 { 
 7     std::shared_ptr<int> pInt(new int(5)); 
 8     std::cout << *pInt << std::endl; 
 9     return 0;
 10 }

验证文件:

g++ -std=c++11 -o tryCpp11 tryCpp11.cc
./tryCpp11
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值