|
今天在isocpp上看到“GCC 4.8.1 released, C++11 feature complete”這個消息,非常興奮。終于有一個全面支持C++11語言特性的編譯器了! 當然了,gcc僅僅是語言特性上全面支持C++11,libstdc++貌似還沒有完全跟上,不過我已經(jīng)挺滿足了,至少可以去嘗試各種特性了。另外,之前也有消息說Clang功能上也100%支持C++11了,但是內(nèi)部還在做測試,Clang3.3的release版據(jù)說6月5號正式發(fā)布,最近對于C++來說大事真多啊,很期待! 今天下午看到這個消息,晚上就實在忍不住了,趕緊把最新的gcc下載下來編譯安裝起來,下面介紹下安裝步驟: 安裝之前,還是提醒下大家:一些基本的準備工作我就不說了,比如得裝個Linux(CentOS,Ubuntu等等),然后裝上基本的編譯環(huán)境,用較老的編譯環(huán)境編譯新的編譯器,這叫自舉(bootstrap)。如果編譯的過程,提示出錯,就按照提示去把環(huán)境裝好,不再詳細說明。 1、下載gcc 4.8.1源碼包: http://ftp.tsukuba.wide./software/gcc/releases/gcc-4.8.1/gcc-4.8.1.tar.bz2 我是虛擬機里面裝的Linux,我嫌wget太慢,所以自己在Windows上用迅雷下好,然后共享到Linux中。 2、解壓: tar -jxvf gcc-4.8.1.tar.bz2 3、下載編譯所需的依賴包: 這個步驟有兩種方式完成: a) 如果Linux有網(wǎng)絡(luò)連接,直接這樣: cd gcc-4.8.1 ./contrib/download_prerequisites cd .. b) 如果Linux沒有網(wǎng)絡(luò)連接(我主機和虛擬機是Host-only,不能聯(lián)網(wǎng),所以另外想辦法),則用Windows上網(wǎng)下載這幾個包: ftp://ftp.gnu.org/gnu/gmp/gmp-4.3.2.tar.bz2 http://www./mpfr-2.4.2/mpfr-2.4.2.tar.bz2 http://www./mpc/download/mpc-0.8.1.tar.gz 有人問,一定要下載幾個版本嗎?下載最新的版本行不行?我沒試過,也不知道,我是按照gcc-4.8.1/contrib/download_prerequisites腳本里面的版本下載的。既然里面已經(jīng)說了這幾個版本,那我就嚴格按照它的要求來做。 然后解壓并移動到gcc-4.8.1下面: tar -xjf gmp-4.3.2.tar.bz2 tar -xjf mpfr-2.4.2.tar.bz2 tar -xzf mpc-0.8.1.tar.gz mv gmp-4.3.2 gcc-4.8.1/gmp mv mpfr-2.4.2 gcc-4.8.1/mpfr mv mpc-0.8.1 gcc-4.8.1/mpc 這樣的做法好處是,不用單獨編譯gmp、mpfr和mpc三個包,放在gcc源碼下面一起編譯(事實上這也是gcc-4.8.1/contrib/download_prerequisites腳本的做法,個人感覺更簡潔些)。 4、新建目錄用于存放編譯結(jié)果: mkdir gcc-build-4.8.1 5、進入新目錄,并執(zhí)行configure命令,產(chǎn)生makefile: cd gcc-build-4.8.1 ../gcc-4.8.1/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib 具體選項不多解釋,大家可以自己查看,我只用到c和c++,所以只編譯這兩種語言的編譯器。 6、編譯: make -j4 我是i5四核,所以開4個線程同時編譯,要是有8核就更爽了~我在虛擬機里面花了30分鐘不到的時間,不算太慢了。 7、安裝: sudo make install 8、大功告成,檢查版本: g++ --version g++ (GCC) 4.8.1 【參考文章】: http:///a/caozuoxitong/OS/20130407/335815.html http://www./doku.php/blog/2012/06/%E5%9C%A8centos_5%E4%B8%8A%E7%BC%96%E8%AF%91gcc_4.7 http://www.cnblogs.com/chuncn/archive/2010/10/15/1851853.html |
|
|