Я хочу попробовать функции C ++ 17 и установить стандартный совместимый компилятор (предпочтительно GCC). Я совершенно новичок в Linux и Ubuntu, и я просто немного не понимаю.
Я попытался подписаться на https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test, но безуспешно . Сначала я побежал:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
Как я понял эта команда устанавливает несколько ключей. Далее я попробовал:
sudo add-apt-repository ppa:ubuntu-toolchain-r/gcc-7
Что вернулся:
Error: 'ppa:ubuntu-toolchain-r/gcc-7' invalid
Далее я попытался установить ветку разработки clang:
apt-get install clang-4.0 lldb-4.0
И это дает мне
E: Unable to locate package clang-4.0
E: Couldn't find any package by glob 'clang-4.0'
E: Couldn't find any package by regex 'clang-4.0'
E: Unable to locate package lldb-4.0
E: Couldn't find any package by glob 'lldb-4.0'
E: Couldn't find any package by regex 'lldb-4.0'
Что все это значит? В чем дело?
add-apt-repository
вы выполнили, отличается от той, что указана на странице PPA, поэтому неудивительно, что она не работает. Попробуйте запустить правильный.test
пакет первым. Обновил вопрос.add-apt-repository
поскольку его имя подразумевает добавление хранилища, оно не устанавливает пакет. Теперь вы можете сделатьapt install gcc-7
.Ответы:
Вы уже можете установить gcc-7 и g ++ - 7 из этого пакета .
источник
add-apt-repository ppa:ubuntu-toolchain-r/test && apt-get update && apt-get install -y gcc-7
Ubuntu 16.04 и ниже
Существует официальный тестовый PPA Ubuntu GCC, который следует отдавать предпочтение:
GCC 7 был выпущен в мае 2017 года , поэтому слишком поздно для 17.04 основного выпуска.
PPA в настоящее время не имеет GCC для более новых версий, например, 16.10, только LTS 12.04, 14.04 и 16.04, как можно увидеть по адресу: https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test | снимок . Я думаю, что это было 17.04 ранее, но это было удалено? Смотрите также: /unix/371737/install-gcc-7-on-ubuntu
Проверено на Ubuntu 16.04, октябрь 2018.
Ubuntu 17.10 и выше
Имеет GCC 7.2 и clang 4 по умолчанию! https://packages.ubuntu.com/artful/gcc | https://packages.ubuntu.com/artful/clang
GCC 8 на 16.04
дает 8.1.0 по состоянию на 2018-11.
По умолчанию в Ubuntu 18.04:
Crosstool-NG
Если вы действительно серьезно относитесь к этому, скомпилируйте и используйте свой собственный GCC с Crosstool-NG, как описано по адресу: /programming/847179/multiple-glibc-libraries-on-a-single-host/52454603# 52454603
Это позволит вам использовать самые разные версии GCC для самых разных версий Ubuntu, не загружая большие двоичные объекты с PPA, которым вы не обязательно доверяете.
источник
ОП просит "как установить ...". Как вариант, как скомпилировать Clang 4.0.
Вы можете компилировать из исходного кода, используя скрипт из репозитория Microsoft ChakraCore GitHub .
Обновите
LLVM_VERSION="3.9.1"
в строке 7 доLLVM_VERSION="4.0.0"
Он загрузит и скомпилирует Clang 4.0 (и весь набор инструментов компилятора) с поддержкой LLVM Gold.
источник