У меня есть сервер RHEL 6 с gcc версии 4.4.7. Я хотел обновить версию gcc (я думаю, что текущая версия 4.8). Ням обновление не работает. Кроме того, SO отвечает на аналогичный вопрос о CentOS не работает. Я следовал методам в принятом ответе, вывод «Ошибка получения данных репозитория для testing-1.1-devtools-6, репозиторий не найден». Также я не уверен, должен ли я следовать методам для CentO.
Кто-нибудь обновил gcc на сервере RHEL 6 x86_64?
Ответы:
На данный момент самый простой способ - использовать двоичную сборку, предоставляемую через репозиторий YUM.
Одним из таких вариантов будет использование репозитория hop5.in. Конкретно эта страница: gcc - Различные компиляторы (C, C ++, Objective-C, Java, ...) . Они предоставляют 4.8.2, которая должна работать с CentOS 6.3 или 6.4. Вы можете сделать обновление до:Другой вариант - использовать набор инструментов разработчика , в частности, комплектную версию, предоставляемую Scientific Linux.
Следуя инструкциям по установке, вы в основном выполните следующие 2 шага:
добавить репозитории установить devtoolsetОбновление № 1
Репозиторий hop5.in YUM, по-видимому, был удален, поэтому единственным выходом является использование метода devtoolset, выделенного выше.
Дополнительные примеры для установки через devtoolset выделены в этом GitHub Gist: Установка gcc 4.8 и Linuxbrew на CentOS 6 .
источник
http://ftp.scientificlinux.org/linux/scientific/5x/x86_64/RPM-GPG-KEYs/RPM-GPG-KEY-cern
. Мне нравится, что на сайте нет https. Путь в школу. После того, как вы загрузите его (каталог tmp или whever), импортируйте его,rpm --import RPM-GPG-KEY-cern
а затем выполнитеyum install.
devtoolset-2-gcc
(по крайней мере для меня) установлено дюжина пакетов и загрузка 35 МБ против 280 пакетов и 575 МБ загрузка дляyum install devtoolset-2
.Red Hat Software Collections поставляется с GCC 4.9, вы можете посмотреть, как включить этот канал.
источник
Я собрал более новые версии gcc для rhel6 для нескольких версий (с 4.7.x до 5.3.1).
Процесс довольно прост благодаря сборкам Redhat Jakub Jelinek fedora gcc, найденным на кодзи
Просто возьмите последнюю версию src rpm для любой нужной вам версии (например, 5.3.1 ).
По сути, вы должны начать с определения требований к сборке, выполнив
rpm -qpR src.rpm
поиск требований к любой версии:Теперь начинается утомительная часть: любой пакет, версия которого выше, чем предоставленная yum для вашего дистрибутива, должен быть загружен из коджи , и рекурсивно повторяйте процесс, пока не будут выполнены все требования к зависимостям.
Я обманываю, кстати.
Я обычно переупаковываю rpm, чтобы он содержал правильное дерево сборки, используя утилиту gnu для использования правильно размещенных и именованных требований, поэтому gmp / mpc / mpfr / isl (cloog больше не требуется) загружаются и отправляются на правильный путь, а новый (раздутый) tar перестраивается в новый src rpm (с небольшими изменениями в spec-файле) без зависимости от их упакованных (rpm) версий. Поскольку я не знаю никого, кто бы использовал ADA, я просто удаляю части, относящиеся к gnat, из specfile, еще больше упрощая процесс сборки, и мне остается только беспокоиться о binutils.
Gcc может на самом деле собираться с более старыми binutils, поэтому, если вы спешите, отредактируйте файл спецификации так, чтобы он требовал версию binutils, уже имеющуюся в вашей системе. Это приведет к слегка поврежденному GCC, но в основном это будет достаточно хорошо.
Это работает довольно хорошо в основном.
ОБНОВЛЕНИЕ 1
Простейший способ открытия src rpm - это, вероятно, yum установить rpm и получить доступ ко всему в ~ / rpmbuild, но я предпочитаю
У вас также есть возможность установить префикс, чтобы этот rpm устанавливался бок о бок, не нарушая дистрибутив rpm (но требует изменения имени и некоторых модификаций внутренних имен пакетов). Я обычно добавляю модуль среды, чтобы я мог загружать и выгружать этот gcc по мере необходимости (аналогично тому, как работают коллекции) как часть rpm (поэтому я добавляю новую зависимость).
Наконец, создайте дерево rpmbuild и поместите файлы, куда они должны пойти и соберите:
ОБНОВЛЕНИЕ 2
Обычно для разработки не следует использовать «серверную» ОС - поэтому у вас есть Fedora, которая уже поставляется с последней версией gcc. У меня есть некоторые особые требования, но вам стоит подумать об использовании правильного инструмента для этой задачи - rhel / centos для запуска производственных приложений, fedora для разработки этих приложений и т. Д.
источник
Эй, ребята, вот что я сделал (сборка с нуля). Без обид на другой ответ, я уверен, что это работает, но GCC особенно важен для безопасности, поэтому я предпочитаю компилировать из оригинального и официального источника:
Источник: http://realtechtalk.com/GCC_5_on_Centos_6_How_To_Install-1965-articles
источник
вы можете попробовать gcc source buid.GCC требует MPC, MPFR и GMP в качестве предварительных условий. Для GCC 4.8 зависимости от версии: MPC 0.8 GMP 6.0 MPFR 2.4.2. Загрузите исходные пакеты и установите все пакеты в / usr / lib Порядок установки: gmp, mpfr, mpc.
источник