Bagaimana cara menginstal g ++ 4.9.2 di Cent OS 6.5?


13

Saya mencoba menginstal versi terbaru g ++ di Cent OS. Yang terbaik yang saya kelola adalah sebagai berikut:

wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repo
yum install devtoolset-2-gcc devtoolset-2-binutils
yum install devtoolset-2-gcc-c++ devtoolset-2-binutils

Tetapi ini menginstal g ++ 4.8.2 dan bukan 4.9.2. Apakah ada cara untuk menginstal 4.9.2?

Jawaban:


4

Anda harus melakukannya dengan cara kuno. Dapatkan sumber GCC, bangun dengan tangan.

Adakah alasan Anda enggan melakukan ini? (Saya dapat memikirkan beberapa hal, tetapi kecuali jika Anda melakukannya juga, saya tidak ingin menambahkan sesuatu yang mungkin membingungkan).

Jika Anda ragu untuk membangun dari sumber, saya mungkin dapat memberikan beberapa langkah.

CATATAN: Alasan untuk itu adalah devtools dengan 4,9 saat ini hanya tersedia untuk pengguna Red Hat dengan lisensi yang valid. Tunggu sebentar, dan akhirnya saya yakin 4,9 devtools akan tersedia untuk pengguna CentOS seperti 4,8 saat ini.


terima kasih telah menjawab, sepertinya saya akan menunggu untuk ini. Bisakah Anda membantu saya di sini juga: superuser.com/questions/834915/…
SpeedCoder

28

CentOS 6/7 secara resmi mendukung ini. Anda tidak perlu repositori pihak ketiga. Dan versi gcc adalah 4.9.2 dalam repo CentOS.

yum install centos-release-scl-rh          
yum install devtoolset-3-gcc devtoolset-3-gcc-c++   

Untuk menggunakan alat yang diperbarui, mulai shell baru menggunakan sclperintah:

scl enable devtoolset-3 bash

Anda mungkin juga perlu mereset variabel lingkungan PATH Anda, yang mungkin diatur dalam ~ / .bashrc atau file profil lainnya. Jika Anda perlu mengubahnya, itu harus menunjuk ke/opt/rh/devtoolset-3/root/usr/bin/:$PATH

Informasi lebih lanjut tentang SCL dari CentOS dan dari Red Hat


Ini tidak berhasil untuk saya. Setelah 3 langkah itu tampaknya berhasil, saya masih melihat gcc 4.7.2 ketika saya melakukannyagcc -v
BT

Oke, selain langkah-langkah ini, saya harus mengubah file .bashrc saya sehingga variabel lingkungan PATH saya diatur /opt/rh/devtoolset-3/root/usr/bin/:$PATHdaripada /opt/centos/devtoolset-1.1/root/usr/bin/:$PATH. Kemudian setelah sesi restart itu berhasil.
BT

Setelah menggunakan solusi ini saya melihat bahwa versi gcc benar-benar diperbarui (menggunakan gcc --versi), tetapi saya masih melihat file header dari versi yang lama. Selain itu, saya tidak dapat menemukan sebagian besar header yang lebih baru dalam direktori yang saya harapkan (/ opt / rh / devtoolset-3 / root / usr / include /). Mengapa ini bisa terjadi dan bagaimana saya bisa menyelesaikannya?
MaMazav

Untuk membuat jawaban ini bertahan dalam ujian waktu, tambahkan yum search devtoolset | grep gcc-c++untuk mengungkapkan angka yang benar dan bukan 3 seperti dalam jawaban
Waslap

14

Saya menggunakan repositori Scientific Linux Cern 6 untuk menginstal gcc 4.9 dan g ++ 4.9 pada sistem CentOS 6.5 dan CentOS 6.6 saya. Itu tidak menginstal g ++ 4.9.2. Ini menginstal g ++ 4.9.1 sebagai gantinya yang cukup baik untuk kebutuhan saya.

Berikut adalah perintah yang saya gunakan untuk menginstalnya.

cd /etc/yum.repos.d
wget http://linuxsoft.cern.ch/cern/scl/slc6-scl.repo
yum -y --nogpgcheck install devtoolset-3-gcc devtoolset-3-gcc-c++

Seperti yang dikatakan Michael dalam komentarnya pada posting ini, untuk benar-benar menggunakan versi gcc yang diinstal ini, mulai sebuah shell baru dengan perintah berikut.

scl enable devtoolset-3 bash

1
Untuk benar-benar menggunakan versi gcc yang diinstal ini, mulai shell baru menggunakanscl enable devtoolset-3 bash
Michael

@Michael Terima kasih telah menyebutkan ini. Saya telah memasukkan komentar Anda dalam jawaban saya sekarang untuk membuat jawabannya lebih bermanfaat.
Susam Pal

Juga tidak berhasil untuk saya. Sama seperti untuk jawaban Jesse
BT
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.