Linux中 CentOS 6.5 手动升级gcc到gcc-6.1.0
<p>从进入码农时代已经有好几年了,一直没有写博文的习惯,用到的很多东西没有记录,到后面就忘了,需要用时,又不停上百度google一下,费时间又费精力,还不一定能找到满意的答案,因此开个博客记录下。(废话不多说了)</p>
<p>
今天在公司服务器上源码安装Nodejs报错 WARNING: C++ compiler too old, need g++ 4.8 or clang++ 3.4 (CXX=g++),直接yum update gcc不能升级到4.8,然后只能手动处理了。</p>
<p>
开始,如果linux安装了wget命令: </p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_785505">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">wget http:</code><code class="bash plain">//ftp</code><code class="bash plain">.gnu.org</code><code class="bash plain">/gnu/gcc/gcc-6</code><code class="bash plain">.1.0</code><code class="bash plain">/gcc-6</code><code class="bash plain">.1.0.</code><code class="bash functions">tar</code><code class="bash plain">.gz</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash functions">tar</code> <code class="bash plain">-zvxf gcc-6.1.0.</code><code class="bash functions">tar</code><code class="bash plain">.gz --directory=</code><code class="bash plain">/usr/local/</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash functions">cd</code> <code class="bash plain">/usr/local/gcc-6</code><code class="bash plain">.1.0</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain">.</code><code class="bash plain">/contrib/download_prerequisites</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash functions">mkdir</code> <code class="bash plain">build && </code><code class="bash functions">cd</code> <code class="bash plain">build </code>
</div>
<div class="line number6 index5 alt1">
<code class="bash plain">..</code><code class="bash plain">/configure</code> <code class="bash plain">-</code><code class="bash functions">enable</code><code class="bash plain">-checking=release -</code><code class="bash functions">enable</code><code class="bash plain">-languages=c,c++ -disable-multilib </code>
</div>
<div class="line number7 index6 alt2">
<code class="bash functions">make</code> <code class="bash plain">&& </code><code class="bash functions">make</code> <code class="bash functions">install</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
如果是在虚拟机上安装,可能需要3-4个小时,耐心等待吧,少年。。。</p>
<p>
如果如果,如果你的linux很不辛,没有安装wget命令,或者不能访问外网,怎么办???继续往下看:</p>
<p>
先下载好最新的gcc(http://ftp.gnu.org/gnu/gcc/),我用的gcc-6.1.0.tar.gz,通过ftp上传到Linux上,解压: </p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_126209">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">tar</code> <code class="bash plain">-zvxf gcc-6.1.0.</code><code class="bash functions">tar</code><code class="bash plain">.gz --directory=</code><code class="bash plain">/usr/local/</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash functions">cd</code> <code class="bash plain">/usr/local/gcc-6</code><code class="bash plain">.1.0</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
然后用vi打开 ./contrib/download_prerequisites 文件,查看当前你下载的gcc需要哪些依赖包。打开后看到如下内容:</p>
<p>
由此,我们还需要下载 gmp-4.3.2.tar.bz2、isl-0.15.tar.bz2、mpc-0.8.1.tar.gz、mpfr-2.4.2.tar.bz2,注意,依赖包一定要是指定版本的,否则会出问题。下载好依赖包,直接解压到/usr/local/gcc-6.1.0/ 目录,然后设置软链接:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_630131">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">ln</code> <code class="bash plain">-sf gmp-4.3.2 gmp</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash functions">ln</code> <code class="bash plain">-sf isl-0.15 isl</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash functions">ln</code> <code class="bash plain">-sf mpc-0.8.1 mpc</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash functions">ln</code> <code class="bash plain">-sf mpfr-2.4.2 mpfr</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
设置好后,就可以开始安装了:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_701289">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">mkdir</code> <code class="bash plain">build && </code><code class="bash functions">cd</code> <code class="bash plain">build </code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">..</code><code class="bash plain">/configure</code> <code class="bash plain">-</code><code class="bash functions">enable</code><code class="bash plain">-checking=release -</code><code class="bash functions">enable</code><code class="bash plain">-languages=c,c++ -disable-multilib </code>
</div>
<div class="line number3 index2 alt2">
<code class="bash functions">make</code> <code class="bash plain">&& </code><code class="bash functions">make</code> <code class="bash functions">install</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
以上所述是小编给大家介绍的Linux中 CentOS 6.5 手动升级gcc到gcc-6.1.0,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!</p>
頁:
[1]