Как мне использовать последнюю версию GCC в Ubuntu?

Я хочу скомпилировать свою программу с последней версией gcc.

Ubuntu 14.04 поставляется с gcc 4.8.2, однако доступна версия 4.9.0, более того, я вижу, что она доступна в виде пакета: gcc-4.9. Я попытался установить его

sudo apt-get install gcc-4.9

но там написано

Reading package lists... DoneBuilding dependency tree       Reading state information... DoneNote, selecting 'gcc-4.9-base' for regex 'gcc-4.9'gcc-4.9-base is already the newest version.0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Похоже, он уже установлен, просто не как стандартный? Как я могу использовать его для создания своей программы?

Лучший способ правильно установить gcc-4.9 и установить его в качестве версии gcc по умолчанию - использовать:

sudo add-apt-repository ppa:ubuntu-toolchain-r/testsudo apt-get updatesudo apt-get install gcc-4.9 g++-4.9sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9

То --slave, с g++, приведет к g++ для переключения вместе с gcc, к той же версии. Но на данный момент gcc-4.9 будет вашей единственной версией, настроенной в update-alternatives, поэтому добавьте 4.8 к update-alternatives, так что на самом деле есть альтернатива, используя:

sudo apt-get install gcc-4.8 g++-4.8sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8

Затем вы можете проверить, какой из них установлен, и изменять его туда и обратно с помощью:

sudo update-alternatives --config gcc

Если у вас возникла проблема с тем, что приоритет gcc update-alternatives 60 не выше, чем у предыдущих установленных версий, вы можете использовать предыдущую команду update-alternatives --config gcc для проверки установленных версий и использования:

sudo update-alternatives --remove gcc

Или:

sudo update-alternatives --remove-all gcc

ПРИМЕЧАНИЕ: Вы можете пропустить установку репозитория PPA и просто использовать /usr/bin/gcc-4.9-base но я предпочитаю использовать свежие обновленные цепочки инструментов.


Для GCC 5.X или 6 пакеты (и, соответственно, команды) просто вызываются gcc-5, gcc-6 и т.д. Это связано с изменением в Схема версий GCC, где 5.1 - это первый выпуск GCC 5, и будущие версии 5.X предназначены для исправления ошибок.

Используйте Тестовые сборки Toolchain PPA:

sudo add-apt-repository ppa:ubuntu-toolchain-r/testsudo apt-get updatesudo apt-get install gcc-4.9

Я не думаю, что GCC 4.9 еще полностью доступен для Ubuntu 14.04. Базовый пакет (gcc-4.9-базовый) и компилятор GCC Go 4.9 (gccgo-4.9) доступны, но другие интерфейсы недоступны. Я не знаю почему.

Таблица совместимости Ultimate mega master

Хорошо, давайте сделаем это:

               GCC                clang        +-------------------+-----------------------+        | 11 10 9 8 7 6 5 4 | 13 12 11 10 9 8 7 6 5 |+-------+-------------------+-----------------------+| 21.10 |  D  M M M         |  D  M  M  M M         || 21.04 |  M  D M M M       |     D  M  M M         || 20.10 |     D M M M       |        D  M M M M M   || 20.04 |     P D M M       |           D M M M M   || 19.10 |       D M M       |                       || 19.04 |       M D M M     |                       || 18.10 |         D M M M   |                       || 18.04 |     P P M D M M   |             M M M D M || 16.04 |       P P P P D M |                       |+-------+-------------------+-----------------------+

Все вопросы:

Как установить нестандартный GCC в качестве значения по умолчанию?

Например, вы установили /usr/bin/gcc-7 но вы хотите использовать это вместо /usr/bin/gcc когда ты бежишь gcc main.c.

Воспользуйся sudo update-alternatives как упоминалось в других ответах: https://askubuntu.com/a/581497/52975 Он создает для вас необходимые символические ссылки.

Смотрите также: Что именно делает `обновление-альтернативы`?

Как создать свой собственный набор инструментов из исходного кода

Если даже PPA недостаточно старый / новый для вас, посмотрите это:

Вопросы по более старой версии GCC

Ubuntu 16.04 и более поздние версии

Вы уже можете установить gcc 7.0 в Ubuntu 18.04 из репозиториев по умолчанию. Чтобы установить gcc-7 в Ubuntu 17.10, 18.04 и 18.10, откройте терминал и введите:

sudo apt install gcc-7 

Чтобы установить gcc-8 в Ubuntu 18.04 и более поздних версиях, откройте терминал и введите:

sudo apt install gcc-8

Чтобы установить gcc-9 в Ubuntu 19.04 и более поздних версиях, откройте терминал и введите:

sudo apt install gcc-9

Вы можете установить gcc-7 в Ubuntu 16.04 из ppa:jonathonf/gcc-7.1.

sudo add-apt-repository ppa:jonathonf/gcc-7.1  sudo apt update  sudo apt install gcc-7  

Вы можете установить gcc-8 в Ubuntu 16.04 из ppa:jonathonf/gcc-8.0.

sudo add-apt-repository ppa:jonathonf/gcc-8.0  sudo apt update  sudo apt install gcc-8  

Несколько версий gcc могут быть установлены рядом друг с другом. Вы можете изменить версию gcc по умолчанию, используя update-alternatives команда для определения, на какой фактический файл ссылается общее имя, например, на какой фактический файл ссылается gcc. Для получения дополнительной информации см. Ответы на этот вопрос: Как изменить компилятор GCC по умолчанию в Ubuntu?.

Чтобы конкретно вызвать gcc 4.9, используйте gcc-4.9 в командной строке.

Все установленные вами версии gcc можно вызывать по отдельности, добавив дефис и номер версии в конце gcc. В вашем случае, gcc-4.8 и gcc-4.9 должен быть доступен. В терминале введите gcc- (обратите внимание на дефис) и дважды нажмите на вкладку, чтобы узнать, установлены ли какие-либо другие версии.

Обратите внимание, что gcc по умолчанию, скорее всего, по-прежнему 4.8. (Используйте gcc -v чтобы убедиться в этом.) К сожалению, изменение значения по умолчанию не является тривиальным, если вы установили gcc-4.9 из репозитория по умолчанию, поскольку он не добавил запись update-alternatives. Если вас интересует, как изменить значение по умолчанию, см. Ответы на этот вопрос этот вопрос.

@Dumindu Подожди, ты только что сказал мне сделать то, что я только что сделал? Это не работает.

@Dumindu, Но как мне конкретно использовать gcc-4.9?

Если вы хотите установить gcc-4.8, вам необходимо использовать sudo apt-get install gcc-4.8. gcc-4.9 , gcc-4.8, gcc-4.7, gcc-4.6 все находятся в [главном репозитории Ubuntu](Ubuntu – Package Search Results -- search ?ключевые слова =gcc&searchon=имена&набор = надежный &раздел = все).

Удалите другие и установите 4.9.

переключитесь на пользователя root : sudo su -
перейдите к /usr/bin, затем запустите ls -l gcc* и опубликуйте свои выходные данные. тогда я опубликую ваш ответ.