王国正 發表於 2021-12-16 23:10:00

centos更新gcc

<p>编译遇到了这么个错误<br>
A compiler with support for C++17 language features is required.<br>
gcc的版本太低了,centos默认的是4.8.0我记得<br>
tm官方就不知道更新一下子源么</p>
<h1 id="1-下载">1 下载</h1>
<p>哪里下都行吧,官网<br>
官网里面没逛明白,我是直接找了篇帖子就用了</p>
<pre><code class="language-cmd">wget ftp://ftp.irisa.fr/pub/mirrors/gcc.gnu.org/gcc/releases/gcc-8.3.0/gcc-8.3.0.tar.gz
tar -zxvf gcc-8.3.0.tar.gz
cd gcc-8.3.0
</code></pre>
<h1 id="2-安装依赖">2 安装依赖</h1>
<p>我看有些帖子是在configure报错:configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.<br>
后直接下载这三个东东,然后编译安装<br>
但是其实可以直接用他里面写好的脚本安装</p>
<pre><code class="language-cmd">./contrib/download_prerequisites
</code></pre>
<h1 id="3-编译安装">3 编译安装</h1>
<pre><code class="language-cmd">./configure --prefix=/usr/local/gcc-8.3.0 --enable-checking=release --enable-languages=c,c++ --disable-multilib
make &amp;&amp; make install
</code></pre>
<p>安装完成了<br>
查看版本<br>
gcc --version # 此时应该还是旧的,但是我在这里已经显示8.3了,后面环境变量就先不设置了<br>
有些帖子说可以删掉就的gcc<br>
yum remove gcc<br>
然后在添加环境变量啥的,我这里没删</p>
<p>添加环境变量</p>
<pre><code class="language-cmd">vim /etc/profile
#添加:
PATH=/usr/local/bin:$PATH

#重启profile
source /etc/profile
</code></pre>
<h1 id="4-更新标准库">4 更新标准库</h1>
<p>这里应该不需要再做,因为我编译时没有指定输出目录,所以都是默认的。<br>
查看了/usr/local/lib64下面的链接都是新的<br>
但是还是做一下记录如何更新标准库</p>
<p>进入lib</p>
<pre><code class="language-cmd">cd xxx/gcc-8.3.0
cd lib64
</code></pre>
<p>查看当前库的版本:ls,看到:libstdc++.so.6.0.25<br>
复制到系统lib下</p>
<pre><code class="language-cmd">cp libstdc++.so.6.0.25 /usr/lib64/
cd /usr/lib64
ls -l | grep libstdc++
</code></pre>
<p>删除旧的软连接</p>
<pre><code class="language-cmd">rm -f libstdc++.so.6
</code></pre>
<p>建立新的软连接:</p>
<pre><code class="language-cmd">ln -s libstdc++.so.6.0.25 libstdc++.so.6
</code></pre>
<p>查看标准库:</p>
<pre><code class="language-cmd">                strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
```
</code></pre>


</div>
<div id="MySignature" role="contentinfo">
    <p>本文来自博客园,作者:荧惑微光,转载请注明原文链接:https://www.cnblogs.com/yinghuoweiguang/p/15700418.html</p><br><br>
来源:https://www.cnblogs.com/yinghuoweiguang/p/15700418.html
頁: [1]
查看完整版本: centos更新gcc