Как установить gcc-4.8

Я проверил версию gcc в моей системе.

Это в настоящее время в 4.6.3. Я читал, что gcc-4.8 отсутствует.

Я попробовал следующие команды без успеха:

sudo apt-get install gcc (gcc is already the newest version)
sudo apt-get install gcc-4.8 (unable to locate package)

Кто-нибудь знает как установить этот пакет на 12.04?

2 ответа

Решение

GCC-4.8 доступен для 12.04 Precise сейчас?

Обновление: по состоянию на 05.06.2013 г. в настоящее время доступен выпуск gcc 4.8.1 для 12.04(точный), доступный по адресу https://launchpad.net/~ubuntu-toolchain-r/+archive/test.

Краткий ответ: gcc-4.8в настоящее время доступно для 12.04(Precise) через инструментальную цепочку PPA или путем компиляции источника (подробности см. ниже).

Объявление о выпуске

Объявление о выпуске gcc-4.8 было сделано 22 марта, так что вы, вероятно, пока не увидите его в официальном репозитории.

Однако, похоже, что Launchpad действительно имеет PPA для тестовых сборок инструментария, который включает gcc-4.8, здесь: https://launchpad.net/~ubuntu-toolchain-r/+archive/test

Согласно списку изменений и списку пакетов, есть дэбы для i386, amd64, arm и powerpc, которые были созданы против raring 13.04.

Последняя доступная версия gcc для 12.04 - 4.8.1 и доступна в наборе инструментов PPA.

Добавление цепочки инструментов / теста PPA:

Чтобы добавить PPA в вашу систему, откройте терминал (Ctrl+Alt+t) и выполните следующие команды:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50

Вам также будет предложено установить несколько предложенных пакетов. Эти пакеты рекомендуются, но не являются обязательными, для установки gcc-4.8.

Какие функции C++ доступны в gcc-4.8 и недоступны в gcc-4.7.2?

  • Согласно GNU.ORG, gcc-4.7 поддерживает ряд функций C++11.
  • Начиная с выпуска gcc-4.8, gcc-4.7 не поддерживает 8 из 64 функций (см. Поддержка C++0x/C++11 в GCC).

  • Эти функции:

    Language Features
    - Rvalue references for *this
    - Generalized attributes
    - Alignment support
    - Inheriting constructors
    Concurreny
    - Bidirectional Fences
    - Memory model
    - Abandoning a process and at_quick_exit
    - Thread-local storage 
    
  • Полный список изменений в gcc-4.8 см. В списке изменений

Мне нужны эти функции gcc на 12.04 Precise, сейчас.Как я могу получить их?

Здание GCC-4.8 из источника:

Если вам нужен gcc-4.8 от 12.04 сейчас, ваш единственный вариант - собрать его из исходного кода.

Пожалуйста, прочтите FAQ по установке GCC перед установкой.

Вы можете скачать gcc-4.8 с одного из зеркальных сайтов gnu.org или напрямую с их сервера SVN.

Вот пример шагов для компиляции из исходного кода (дополнительные сведения см. Здесь). Обратите внимание, что они могут различаться в зависимости от вашей системы и предпочтений.

  1. Скачать исходный код

    • Сделать каталог сборки (mkdir gcc-build && cd gcc-build)
    • Загрузите исходный файл: wget http://www.netgull.com/gcc/releases/gcc-4.8.0/gcc-4.8.0.tar.bz2 (настройте эту команду, чтобы использовать соответствующий зеркальный сайт.
    • Распакуйте файл (tar -xvjf <file name>)
  2. Установите несколько дополнительных библиотек (sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev libc6-dev)

  3. Скомпилируйте источник: ./gcc-4.8.0/configure --prefix=/app/gcc/4.8.0
  4. Бежать make (Это займет некоторое время. Пойди приготовь кофе или испечь печенье.;-))
  5. Установите код: sudo make install

Как только этот процесс завершится, запустите команду gcc --version чтобы убедиться, что установка успешно завершена. Вы должны увидеть нечто похожее на следующий результат:

maggotbrain@foucault:~$ gcc --version
gcc (Linaro 4.8.0) 4.8.0
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Итог: Спасибо всем тем, кто предоставляет легкую установку бэкпортов Ubuntu для вас. Дайте им печенье, которое вы испекли во время работы make,;-)

Так что ответ выше работает, по крайней мере, для ручной установки. Хотя даже после sudo make install, Бег gcc до сих пор просто запускает стоковую версию 4.6.3. Даже пытаясь gcc-4.8 или же gcc-4.8.0 не работает Бег /app/gcc/4.8.0/bin/gcc кажется, единственное, что работает для меня. Я имею в виду, что это отчасти хромает, но по крайней мере это работает.

Другие вопросы по тегам