Як встановити g ++ 4.9.2 в Cent OS 6.5?


13

Я намагаюся встановити останню версію g ++ в Cent OS. Найкраще мені вдалося:

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

Але для цього встановлено g ++ 4.8.2, а не 4.9.2. Чи існує спосіб встановлення 4.9.2?

Відповіді:


4

Вам доведеться зробити це старомодно. Отримайте джерела GCC, будуйте їх вручну.

З будь-якої причини ви проти цього робити? (Я можу придумати декілька, але якщо ви теж не зробите, я не хочу додавати нічого, що може бентежити).

Якщо ви вагаєтесь із створенням джерел, я, мабуть, можу навести кілька кроків.

ПРИМІТКА. Причиною цього є розробки з версією 4.9, доступні лише користувачам Red Hat з дійсною ліцензією. Почекайте деякий час, і, врешті-решт, я впевнений, що 4,9 devtools будуть доступні для користувачів CentOS, як і 4,8.


дякую за відповідь, здається, я буду чекати цього. Чи можете ви мені допомогти тут також: superuser.com/questions/834915/…
SpeedCoder

28

CentOS 6/7 офіційно підтримує це. Вам не потрібно сторонне сховище. І версія gcc становить 4.9.2 в репо, що займається CentOS.

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

Щоб використовувати оновлені інструменти, запустіть нову оболонку за допомогою sclкоманди:

scl enable devtoolset-3 bash

Вам також може знадобитися скинути змінну середовища PATH, яка може бути встановлена ​​в ~ / .bashrc або іншому файлі профілю. Якщо вам потрібно це змінити, це повинно вказувати на/opt/rh/devtoolset-3/root/usr/bin/:$PATH

Більше інформації про SCL від CentOS та від Red Hat


Це не спрацювало для мене. Після цих 3 кроків, здавалося б, успішних, я все ще бачу gcc 4.7.2, коли я це роблюgcc -v
BT

Добре, крім цих кроків, мені довелося змінити мій файл .bashrc, щоб мій змінний середовища PATH був встановлений на, /opt/rh/devtoolset-3/root/usr/bin/:$PATHа не /opt/centos/devtoolset-1.1/root/usr/bin/:$PATH. Потім після перезавантаження сеансу це спрацювало.
BT

Після використання цього рішення я бачу, що версія gcc дійсно оновлена ​​(використовуючи gcc --version), але я все ще бачу файли заголовків із старої версії. Більше того, я не можу знайти більшість нових заголовків у каталозі, я очікував, що вони будуть (/ opt / rh / devtoolset-3 / root / usr / include /). Чому це може статися і як я можу це вирішити?
MaMazav

Щоб ця відповідь витримала перевірку часом, додайте, yum search devtoolset | grep gcc-c++щоб виявити правильну цифру замість 3, як у відповіді
Waslap

14

Я використовую сховище Scientific Linux Cern 6 для встановлення gcc 4.9 та g ++ 4.9 в моїх системах CentOS 6.5 та CentOS 6.6. Він не встановлює g ++ 4.9.2. Натомість він встановлює g ++ 4.9.1, що досить добре для моїх потреб.

Ось команди, які я використовую для його встановлення.

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++

Як заявив Майкл у коментарі до цього допису, щоб фактично використовувати версію gcc, яку встановлено, запустіть нову оболонку із наступної команди.

scl enable devtoolset-3 bash

1
Для того, щоб фактично використовувати версію gcc, яку встановлено, запустіть нову оболонку, використовуючиscl enable devtoolset-3 bash
Michael

@Michael Дякую, що згадуєте про це. Зараз я включив ваш коментар у свою відповідь, щоб зробити відповідь кориснішою.
Сусам Пал

Також не працювало для мене. Те саме, що і у відповіді Джессі
BT
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.