Elam的caffe筆記之配置篇(一):CentOS6.5編譯安裝gcc4.8.2

鄭付強發表於2019-02-16

配置要求:

系統:centos6.5
目標:基於CUDA8.0+Opencv3.1+Cudnnv5.1+python3.6介面的caffe框架


gcc是linux編譯安裝必備的編譯器

CentOS6.5自帶的gcc版本是4.4.7,並不支援C++11
查詢後可得需要版本高於4.8.1的gcc才能支援C++11
輸入

yum info gcc

發現可升級的gcc版本低於4.8.1,只能手動編譯安裝4.8.1版本以上的gcc
編譯安裝手動下載的包需要用到cmake
輸入

cmake -version

檢視cmake版本,若不存在則輸入

yum install cmake

進行安裝

編譯安裝gcc

1 下載gcc4.8.2原始碼

wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2
tar -jxvf gcc-4.8.2.tar.bz2

2 下載編譯原始碼所需要的依賴項

cd gcc-4.8.2
./contrib/download_prerequisites

這個命令可以讓原始碼包自動幫我們下載編譯gcc所需要的gmp,mpfr和mpc三個依賴項.

3 建立一個空資料夾作為編譯的輸出目錄,並生成Makefile檔案

mkdir build -gcc-4.8.2
cd build -gcc-4.8.2
../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

../configure的意思是從這個資料夾的上一級資料夾執行configure檔案,後面是所要設定的初始詳見configure –help.

4 編譯

make -j4

後面-j4是cmake對多核處理器的優化,根據cpu的核心數自己做調整.
漫長的等待.

5 安裝

make install

6 驗證安裝

重啟後檢視gcc版本

gcc -v

若看到4.8.2則表示安裝成功

遇到的問題

1 在新的gcc沒有安裝成功前,不要!不要!!不要!!!解除安裝低版本的gcc

因為make時還是需要呼叫gcc的,本人第一次編譯時就是因為先把4.4.7版本的gcc解除安裝了編譯到一半是終止了,錯誤提示是無法識別c++

2 gcc的連結問題

兩種情況,第一種有2個以上的gcc版本存在,系統自帶的版本是低版本的;第二種是在手動編譯安裝gcc成功後把低版本的gcc解除安裝了。詳細參見本人在安裝NVIDIA驅動時碰到的gcc版本切換問題

相關文章