Saya menggunakan CentOS 7.2
Saat saya menggunakan yum groupinstall "Development Tools"
, gcc versi 4.8.5, seperti ini:
Saya ingin menginstal gcc 5.3
Bagaimana mendekati ini dengan yum
?
yum
sumber daya di mana saja?
Jawaban:
Pembaruan:
Seringkali orang menginginkan versi terbaru dari gcc, dan devtoolset selalu diperbarui, jadi mungkin Anda ingin devtoolset-N di mana N = {4,5,6,7 ...}, periksa yum untuk terbaru tersedia di sistem Anda). Memperbarui cmds di bawah untuk N = 7.
Ada sebuah paket untuk gcc-7.2.1 untuk devtoolset-7 sebagai contoh. Pertama, Anda perlu mengaktifkan Koleksi Perangkat Lunak , lalu tersedia di devtoolset-7:
sudo yum install centos-release-scl
sudo yum install devtoolset-7-gcc*
scl enable devtoolset-7 bash
which gcc
gcc --version
scl enable devtoolset-6 bash
atau . /opt/rh/devtoolset-6/bin/enable
tautan yang diperbarui ke dokumen alat perangkat lunak
yum install devtoolset-4-binutils
mungkin juga berguna untuk mendapatkan toolchain GCC yang lengkap.
source scl_source enable devtoolset-4
mengganti gcc saya saat ini dengan yang diinstal olehdevtoolset-4
Pembaruan: Menginstal versi terbaru gcc 9: ( gcc 9.3.0 ) - dirilis 12 Maret 2020 :
Metode yang sama dapat diterapkan ke gcc 10 ( gcc 10.1.0 ) - dirilis 7 Mei 2020
Unduh file: gcc-9.3.0.tar.gz atau gcc-10.1.0.tar.gz
Kompilasi dan instal:
//required libraries: (some may already have been installed)
dnf install libmpc-devel mpfr-devel gmp-devel
//if dnf install libmpc-devel is not working try:
dnf --enablerepo=PowerTools install libmpc-devel
//install zlib
dnf install zlib-devel*
./configure --with-system-zlib --disable-multilib --enable-languages=c,c++
make -j 8 <== this may take around an hour or more to finish
(depending on your cpu speed)
make install
Diuji di bawah CentOS 7.8.2003 untuk gcc 9.3 dan gcc 10.1
Diuji di bawah CentOS 8.1.1911 untuk gcc 10.1 (mungkin memerlukan lebih banyak waktu untuk dikompilasi)
Hasil: gcc / g ++ 9.3.0 / 10.1.0
Menginstal gcc 7.4 (gcc 7.4.0) - dirilis 6 Desember 2018 :
Unduh file: https://ftp.gnu.org/gnu/gcc/gcc-7.4.0/gcc-7.4.0.tar.gz
Kompilasi dan instal:
//required libraries:
yum install libmpc-devel mpfr-devel gmp-devel
./configure --with-system-zlib --disable-multilib --enable-languages=c,c++
make -j 8 <== this may take around 50 minutes or less to finish with 8 threads
(depending on your cpu speed)
make install
Hasil:
Catatan:
1. Jawaban Stack Overflow ini akan membantu untuk melihat cara memverifikasi file sumber yang diunduh.
2. Gunakan opsi --prefix
untuk menginstal gcc ke direktori lain selain yang default. Default direktori instalasi tingkat atas ke / usr / local. Baca tentang opsi penginstalan gcc
.sig
file yang sesuai (tanda tangan pgp).
make -j $(nproc)
make && make install
tanpa --prefix
? Jika demikian, semuanya diinstal menjadi /usr/
tidak genap /usr/local
, periksa config.log
:Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info ...
Anda dapat menggunakan repo centos-sclo-rh-testing untuk menginstal GCC v7 tanpa harus mengkompilasinya selamanya, juga mengaktifkan V7 secara default dan memungkinkan Anda beralih di antara versi yang berbeda jika diperlukan.
sudo yum install -y yum-utils centos-release-scl;
sudo yum -y --enablerepo=centos-sclo-rh-testing install devtoolset-7-gcc;
echo "source /opt/rh/devtoolset-7/enable" | sudo tee -a /etc/profile;
source /opt/rh/devtoolset-7/enable;
gcc --version;
/usr/lib64/libstdc++.so
file untuk memiliki simbol yang lebih baru.
Pendekatan terbaik untuk menggunakan yum dan mengupdate devtoolset Anda adalah dengan menggunakan repositori CentOS SCLo RH Testing.
yum install centos-release-scl-rh
yum --enablerepo=centos-sclo-rh-testing install devtoolset-7-gcc devtoolset-7-gcc-c++
Banyak paket tambahan juga tersedia, untuk melihat semuanya
yum --enablerepo=centos-sclo-rh-testing list devtoolset-7*
Anda dapat menggunakan metode ini untuk menginstal versi dev tool, cukup tukar 7 untuk versi yang Anda inginkan. devtoolset-6-gcc, devtoolset-5-gcc dll.
Perintah untuk menginstal GCC dan Alat Pengembangan pada server CentOS / RHEL 7
Ketik perintah yum berikut sebagai pengguna root:
ATAU
Jika perintah di atas gagal, coba: