從
gcc4.8.1
開始完全支持C++11
的編譯器娩井。今天教大家安裝gcc4.8.1
版本。
Linux(Centos)下編譯安裝gcc4.8.2
-
獲取gcc4.8.2包:
下載鏈接:http://gcc.skazkaforyou.com/releases ,里面有
gcc
所有的版本,自行下載。
也可以選擇(推薦):$ wget http://gcc.skazkaforyou.com/releases/gcc-4.8.2/gcc-4.8.2.tar.gz
-
解壓縮
$ tar -zxvf gcc-4.8.2.tar.gz
-
安裝依賴
安裝編譯
gcc4.8.2
,系統(tǒng)需要安裝一個(gè)低版本的gcc
叠穆,如果gcc
、gcc-c++
機(jī)器已經(jīng)安裝臼膏,此步驟可以略過(guò)硼被。```sh $ yum update $ yum install gcc $ yum install gcc-c++ ```
進(jìn)入
gcc-4.8.2
目錄,執(zhí)行./contrib/download_prerequisites
腳本渗磅,會(huì)自動(dòng)下載三個(gè)依賴庫(kù)別為gmp-4.3.2
嚷硫、mpfr-2.4.2
检访、mpc-0.8.1
$ cd gcc-4.8.2 $ ./contrib/download_prerequisites
-
編譯
$ cd gcc-4.8.2 $ ./configure --prefix=/usr --enable-threads=posix --disable-checking --enable-languages=c,c++ --disable-multilib $ sudo make && make install
-
驗(yàn)證
$ gcc -v
安裝錯(cuò)誤解決方案:
onfigure: error: in `/opt/soft/gcc-4.8.2': configure: error: no acceptable C compiler found in $PATH
缺少
gcc
,安裝即可:
```sh
$ yum update
$ yum install gcc
configure: error: C++ compiler missing or inoperational
缺少
gcc-c++
仔掸,安裝即可:
sh $ yum update $ yu
libstdc++.so.6: version 'GLIBCXX_3.4.15' not found錯(cuò)誤的解決
-
錯(cuò)誤原因是缺少GLIBCXX_3.4.15版本脆贵,或是更高的版本。為了核實(shí)版本問(wèn)題:
$ strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_3.4.9 GLIBCXX_3.4.10 GLIBCXX_3.4.11 GLIBCXX_3.4.12 GLIBCXX_3.4.13 GLIBCXX_FORCE_NEW GLIBCXX_DEBUG_MESSAGE_LENGTH
我們看到當(dāng)前
gcc
版本中的確沒有GLIBCXX_3.4.15
起暮,考慮到剛安裝過(guò)新版的gcc
卖氨,似乎不應(yīng)該出現(xiàn)這樣的問(wèn)題。順著
gcc
安裝路徑负懦,找到了新的libstdc++
:$ strings /usr/local/lib64/libstdc++.so.6.0.20|grep GLIBCXX GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_3.4.9 GLIBCXX_3.4.10 GLIBCXX_3.4.11 GLIBCXX_3.4.12 GLIBCXX_3.4.13 GLIBCXX_3.4.14 GLIBCXX_3.4.15 GLIBCXX_3.4.16 GLIBCXX_3.4.17 GLIBCXX_3.4.18 GLIBCXX_3.4.19 GLIBCXX_3.4.20 GLIBCXX_FORCE_NEW GLIBCXX_DEBUG_MESSAGE_LENGTH
這里該有的都有了筒捺,把這份軟鏈到正確的地方,就妥了纸厉。
$ cp /usr/local/lib64/libstdc++.so.6.0.20 /usr/lib64/ $ cd /usr/lib64/ $ rm -f libstdc++.so.6 $ ln -s libstdc++.so.6.0.20 libstdc++.so.6 $ ll libstdc* lrwxrwxrwx. 1 root root 19 5月 12 13:34 libstdc++.so.6 -> libstdc++.so.6.0.20 -rwxr-xr-x. 1 root root 987096 11月 22 02:08 libstdc++.so.6.0.13 -rwxr-xr-x. 1 root root 6700716 5月 12 13:33 libstdc++.so.6.0.20
此后系吭,再進(jìn)行編譯安裝就順暢了
我們是
二手轉(zhuǎn)轉(zhuǎn)前端(大轉(zhuǎn)轉(zhuǎn)FE)
知乎專欄:https://zhuanlan.zhihu.com/zhuanzhuan
官方微信公共號(hào):zhuanzhuanfe
微信公眾二維碼:
微信公眾二維碼
關(guān)注我們,我們會(huì)定期分享一些團(tuán)隊(duì)對(duì)前端的想法與沉淀