1. 程式人生 > >X Chen筆記---CentOS 6&7 安裝使用多個GCC版本(GCC4.9,GCC5.3,GCC6.2)

X Chen筆記---CentOS 6&7 安裝使用多個GCC版本(GCC4.9,GCC5.3,GCC6.2)

從CentOS6開始,CentOS自身提供了一種方式可以使用Scientific Linux distribution發行版的devtoolset-*來解決。具體使用方式如下:

1)安裝scl釋出源:yum install centos-release-scl-rh

2)安裝GCC&GCC-C++:yum install devtoolset-3-gcc devtoolset-3-gcc-c++

這裡面devtoolset-3是第3個版本,目前針對CentOS6&7支援3,4,6三個版本,分別對應GCC4.9,GCC5.3,GCC6.2,使用者可以根據自己的需要選擇安裝哪一個版本,當然可以同時安裝多個版本。

3)根據需要使用:source /opt/rh/devtoolset-3/enable 進行切換,這裡面devtoolset-3可以根據你是安裝3,4,6進行切換。這個切換原理也很簡單,只是設定了一些環境變數。若要在啟動的時候就生效,可以放置到~/.bashrc之中即可。

4)補充一下使用devtoolset-2(gcc 4.8.2)的方法:

(1)rpm --import http://linuxsoft.cern.ch/cern/slc6X/x86_64/RPM-GPG-KEY-cern

(2)wget -O /etc/yum.repos.d/slc6-devtoolset.repo http://linuxsoft.cern.ch/cern/devtoolset/slc6-devtoolset.repo

(3)yum install devtoolset-2-toolchain

yum install devtoolset-2-gcc  devtoolset-2-gcc-c++

(4)source /opt/rh/devtoolset-2/enable

測試發現當前命令似乎只對本次shell有效,所以可能需要把這條命令加入到~/.bashrc中 如果需要永久覆蓋, 可以 echo "source /opt/rh/devtoolset-3/enable" >> /etc/bashrc source /etc/bashrc 重新登陸terminal生效,發現gcc已經改變

繼續安裝gcc-5.3.1版本, 通過靈活切換是可行的 yum -y install devtoolset-4-gcc devtoolset-4-gcc-c++ source /opt/rh/devtoolset-4/enable

如果要切換到不同的版本,直接執行上面的命令就可以,十分方便。如果需要設定永久生效,直接在/etc/profile或/etc/bashrc中修改。 ------------------------------------------------------------------------------ 如果你要在開發程式中新增asan記憶體檢測功能,可以繼續安裝libssan模組 yum -y install devtoolset-4-libasan-devel libssan 如果以前在devtoolset-3-gcc之前安裝過libssan,這裡就不需要安裝了,但是devtoolset-4-libasan-devel必須要安裝 否則編譯就容易出現的報錯