centosgcc編譯
㈠ centos7.0如何檢查gcc編譯環境
1,安裝gcc,執行如下的幾個yum命令即可 Java代碼 yum -y install gcc yum -y install gcc-c++ yum install make yum install autoconf automake libtool cmake ncurses-devel openssl-devel gcc* 2,安裝JDK,並設置環境變數,完成後測試安裝成功
㈡ 如何在CentOS上使用高版本的GCC編譯
那取決於。你要用gcc干什麼? 比如編譯c語言源代碼,
比如有個源代碼,你把他命名為123.c 然後編譯,終端輸入 gcc 123.c 之後會出現一個編譯好的a.out 再執行編譯好的文件就可以了。
㈢ centos7怎麼編譯安裝gcc-c++
在CentOS7和RHEL7系統上如何安裝GnuGCC
編譯器
和相關的工具比如:autoconf,automake,flex,
c++編譯器
等工具。我們可以通過在centos或者rhel7系統上安裝下面的軟體包來搭建基本的開發環境。-c++gettextlicentos7怎麼編譯安裝gcc-c++
㈣ CentOS 7 升級gcc/g++編譯器
CentOS 7 升級gcc/g++編譯器
參考鏈接:
CentOS 7 升級gcc/g++編譯器
升級gcc的一個更加簡單的做法,但是這個做法的缺點是只支持64位程序而無32位支持。
採用CentOS的一個第三方庫SCL(軟體選集),SCL可以在不覆蓋原系統軟體包的情況下安裝新的軟體包與老軟體包共存並且可以使用scl命令切換,不過也有個缺點就是只支持64位的。還有devtoolset-4(gcc 5.2)及之前的版本都已經結束支持,只能通過其他方法安裝。
本次升級到gcc8,命令如下:
你要哪個版本的就把第2條命令中的數字8改成你要的主版本號就可以了。這樣升級到的是最新的版本。例如8升級到的是8.2.0而不是8.1。
通過scl命令啟動gcc,這個只是暫時的,當你的shell關閉後或者重啟就會恢復原來的版本,要想一直使用升級後的版本可以使用如下命令:
㈤ centOS 中gcc編譯C文件的問題
之前兩位說的沒有問題,這個應該使g++命令編譯,用法和gcc基本類似,樣例命令輸入「g++ test.cpp」,編譯同樣生成文件a.out。也可使使用make命令,如果要編譯test.cpp可以輸入「make test」,這樣編譯出的文件就叫test。而且主函數的類型應該使用int,並顯式的調用return 0。這樣可以避免不必要的麻煩。另外要注意C語言的源文件都應該叫 xxx.c, .cpp是表示C++的源文件
㈥ 如何在CentOS上使用高版本的GCC編譯
CentOS作為伺服器系統,追求的是穩定性和高性能,運行其上的軟體自然不會同步得那麼實時。普通軟體,找到合適的YUM倉庫就能順利解決依賴完成更新。
但是對於GCC這種底層應用來講,涉及到的依賴非常多。更新超復雜,且不建議在生產伺服器上進行更新。但如果你需要新版本的GCC該怎樣呢?實際上Redhat和CentOS一直對開發有專門的支持,即devtools軟體包。包含有:gcc、gdb、binutils、elfutils、SystemTap、Valgrind、OProfile和dwz。以CentOS為例:
wget http://people.centos.org/tru/devtools-1.1/devtools-1.1.repo -O /etc/yum.repos.d/devtools-1.1.repo
yum -y --enablerepo=testing-1.1-devtools-6 install devtoolset-1.1-gcc devtoolset-1.1-gcc-c++
為了不影響本機的gcc環境,開發工具默認安裝在『/opt/centos/devtoolset-1.1/root/』目錄下。需要修改用戶的環境變數方可使用:
export CC=/opt/centos/devtoolset-1.1/root/usr/bin/gcc
export CPP=/opt/centos/devtoolset-1.1/root/usr/bin/cpp
export CXX=/opt/centos/devtoolset-1.1/root/usr/bin/c++
推薦使用gcc默認給出的環境變數設置腳本『/opt/centos/devtoolset-1.1/enable 』。將其加到有需要用戶的環境變數中,重新登錄即生效。
echo 'source /opt/centos/devtoolset-1.1/enable' >> ~/.bash_profile
㈦ 如何在CentOS上使用高版本的GCC編譯
為了不影響本機的gcc環境,開發工具默認安裝在『/opt/centos/devtoolset-1.1/root/』目錄下。需要修改用戶的環境變數方可使用:
export CC=/opt/centos/devtoolset-1.1/root/usr/bin/gcc
export CPP=/opt/centos/devtoolset-1.1/root/usr/bin/cpp
export CXX=/opt/centos/devtoolset-1.1/root/usr/bin/c++
推薦使用gcc默認給出的環境變數設置腳本『/opt/centos/devtoolset-1.1/enable 』。將其加到有需要用戶的環境變數中,重新登錄即生效。
echo 'source /opt/centos/devtoolset-1.1/enable' >> ~/.bash_profile
source /opt/centos/devtoolset-1.1/enable
gcc -v
筆者小試了一把,在CentOS 6.4下,原生GCC版本為4.4.7-3,官網給出的開發版本為4.7.2-5。拿來編譯linux-3.9.7內核,生成的文件變小了一丁點,時間沒太留意,上應該更快吧。哈哈……
㈧ centos7怎麼編譯安裝gcc-c++
下為最近升級gcc4.9.2的實際操作步驟
環境: CentOS-7.2 , 當前版本為gcc-4.8.5,用root進行安裝
1、先要執行下面這一條命令,安裝g++:
yum install gcc-c++
2、 gcc 編譯需要三個額外庫gmp、mpfr、mpc,下載並按照下面的順序安裝它們,如下:
wget ftp://ftp.gnu.org/gnu/gmp/gmp-5.1.3.tar.gz
wget ftp://ftp.gnu.org/gnu/mpfr/mpfr-3.1.2.tar.gz
wget http://www.multiprecision.org/mpc/download/mpc-1.0.tar.gz
tar -zxvf gmp-5.1.3.tar.gz
cd gmp-5.1.3
./configure
make && make install
cd ..
tar -zxvf mpfr-3.1.2.tar.gz
cd mpfr-3.1.2
./configure
make && make install
cd ..
tar -zxvf mpc-1.0.tar.gz
cd mpc-1.0
./configure
make && make install
cd ..
3、安裝gcc:
wget http://ftp.gnu.org/gnu/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2
tar -jxvf gcc-4.9.2.tar.bz2
cd gcc-4.9.2
./contrib/download_prerequisites
cd ..
mkdir gcc-build-4.9.2
cd gcc-build-4.9.2
../gcc-4.9.2/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make
make install
4、修改/usr/bin/下gcc版本
執行/usr/bin/gcc --version查看版本:
gcc (GCC) 4.4.7-4
/usr/local/bin/gcc --version:
gcc (GCC) 4.8.2
發現多個版本的gcc。
此時執行以下操作:
mv /usr/bin/gcc /usr/bin/gcc4.4.7
ln -s /usr/local/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++4.4.7
ln -s /usr/local/bin/g++ /usr/bin/g++
mv /usr/bin/cc /usr/bin/cc4.4.7
ln -s /usr/local/bin/gcc /usr/bin/cc
mv /usr/bin/c++ /usr/bin/C++4.4.7
ln -s /usr/local/bin/c++ /usr/bin/c++
export LD_LIBRARY_PATH=/usr/local/lib64:$LD_LIBRARY_PATH
5、檢查動態庫:
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
㈨ centos7怎麼編譯安裝gcc-c++
方法/步驟
1
yum install glibc-static libstdc++-static -y
安裝c和c++的靜態庫(據說如果系統中缺少libc.a和libstdc++.a編譯時會出錯,但是我沒有那麼多閑情逸致去試,實踐過的朋友可以回復一下,分享一下經驗,讓大家都長長見識)
2
下載解壓gcc,我的gcc目錄是gcc-4.8.0
3
進入gcc目錄,執行:
./contrib/download_prerequisites
這個神奇的腳本文件會幫我們下載、配置、安裝那三個依賴的庫。可以節約我們大量的時間和精力。
4
你以為這三個庫自動下載了、自動make install了就沒事了嗎?錯!
很多人在編譯gcc的時候出現各種奇奇怪怪的錯誤就是這步沒有做好。
它們還不在.so文件的搜索路徑裡面,需要加進去,最後切記切記一定要執行一下ldconfig。
大致做法為:
1,找到你的共享庫文件被install到哪個目錄了(updatedb+locate命令)。
2,如果你的庫不是直接放在/lib或/usr/lib下,需要修改/etc/ld.so.conf文件,加入你的共享庫的路徑
3,如果在2中添加了共享庫路徑,切記要執行一下ldconfig,更新響應cache文件讓系統能找到你的共享庫。
5
建立臨時目錄,這個目錄用以存放編譯時的大量臨時文件,是文檔要求中必須的。
我是在gcc-4.8.0下建立了一個名為gcc-build-4.8.0的目錄,進入它。
mkdir gcc-build-4.8.0
cd gcc-build-4.8.0
配置gcc編譯選項
6
強烈建議閱讀INSTALL目錄下的說明文檔,尤其是configure.html,以確定你的編譯選項。
比較基本的選項有--enable-languages,說明你要讓你的gcc支持那些語言,--disable-multilib不生成編譯為其他平台可執行代碼的交叉編譯器。--disable-checking生成的編譯器在編譯過程中不做額外檢查,也可以使用--enable-checking=xxx來增加一些檢查。
網上還說了什麼--with-gmp、--with-mpfr、--with-mpc這三個選項,但是如果你3,4步做好了,就不要配了,反之你還是老實點吧別抱僥幸心理了。
調用gcc-4.8.0目錄下的configure文件:
例如:
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
7
執行
../make #不解釋
執行編譯命令(#在8核的虛擬機上進行編譯,每個核分配2個編譯任務)
make -j16
make install編譯過程CPU 核基本100%佔用,整個編譯用時11分50秒。
檢查gcc版本
#你就等吧少年,建議晚上睡覺前做
當然上面三步一定要在前一步順利結束的情況下進行,如果哪一步出錯了,結果都顯示error了,就不要再做後面的了。在shell的輸出里搜索"error"看具體的出錯點是什麼,、google一下為什麼。
如果你求穩的話,可以在make install之前先make check一下。