Маленькая шпаргалка на тему того, как в Linux установить наиболее "свежие" на сегодняшний день release-версии компиляторов gcc и g++. В моём случае - установить версии 4.8.1, взамен предустановленных по умолчанию версий 4.6.3 в операционной системе Ubuntu 12.04 LTS.
Согласно этой информации:
реализация GCC теперь полностью переписана на C++. Причины принятия такого решения перечислены здесь в разделах Background и Rationale. Состояние поддержки стандарта C++11 в GCC 4.8 обозначено здесь. О поддержке стандарта C11 можно почитать тут. Поскольку меня весьма интересует C++11 (читаю это), то захотелось поставить наиболее свежую версию компилятора.
Обозначенный далее перечень действий подходит для использования в следующих операционных системах Linux:
Согласно этой информации:
GCC now uses C++ as its implementation language. This means that to build GCC from sources, you will need a C++ compiler that understands C++ 2003.
реализация GCC теперь полностью переписана на C++. Причины принятия такого решения перечислены здесь в разделах Background и Rationale. Состояние поддержки стандарта C++11 в GCC 4.8 обозначено здесь. О поддержке стандарта C11 можно почитать тут. Поскольку меня весьма интересует C++11 (читаю это), то захотелось поставить наиболее свежую версию компилятора.
Обозначенный далее перечень действий подходит для использования в следующих операционных системах Linux:
- Ubuntu 13.10 Saucy Salamander
- Ubuntu 13.04 Raring Ringtail
- Ubuntu 12.10 Quantal Quetzal
- Ubuntu 12.04 Precise Pangolin
- Ubuntu 10.04 Lucid Lynx
- Linux Mint 16 Petra
- Linux Mint 15 Olivia
- Linux Mint 14 Nadia
- Linux Mint 13 Maya
- Elementary OS 0.2 Luna
1. Установка gcc 4.8.1 (компилятор C)
$ sudo add-apt-repository ppa:ubuntu-toolchain-r/test
$ sudo apt-get update
$ sudo apt-get install gcc-4.8
После успешной установки gcc 4.8.1, необходимо удалить gcc и g++ из списка приложений, используемых по умолчанию:
$ sudo update-alternatives --remove-all gcc
Назначаем gcc 4.8.1 компилятором, используемым по умолчанию:
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20
$ sudo update-alternatives --config gcc
Источник обозначенной выше информации здесь. Теперь нужно обновить и компилятор g++ (см. след. раздел).
2. Установка g++ 4.8.1 (компилятор C++)
После обновления gcc приступаем к обновлению g++:
sudo update-alternatives --remove-all g++
sudo apt-get install g++-4.8
Конфигурируем g++:
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 20
sudo update-alternatives --config g++
Обновляем систему:
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade
Всё. После обновления системы проверяем версии компиляторов:
$ gcc -v
...
gcc version 4.8.1
$ g++ -v
gcc version 4.8.1
Т. о. всё прошло успешно.
Примечание: если не выполнять действий, описанных в разделе 2, то для g++ результат был бы иным:
gcc version 4.6.3
т. е. обновился бы только компилятор gcc, а g++ остался бы старым.
Источник обновления g++ здесь.
3 комментария:
Спасибо! Помогло на ElementaryOS Luna (база - 12.04).
обновился я по твоей инструкции, и toolchain сломался. ибо компилятор потянул за собой binutils-2.23.52, который выдает ошибку при компиляции большинства программ. Это конечно решается добавлением LDFLAGS="-lm", но все равно неприятно, нужно об этом упоминать.
Спасиб, сломался G++ компил, обновил -- работает!
Отправить комментарий