gcc-7и gcc-8будут счастливо жить вместе.
Я бы посоветовал разрешить gcc-7установку для удовлетворения build-essentialи, возможно, других зависимых пакетов, и настроить его gcc-8для установки по умолчанию в gcc.
Используйте update-alternativesдля gccавтоматического перенаправления на gcc-8:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8
Это даст вам удобство gcc быть в последней версии, и все же вы сможете вызывать gcc-7или gcc-8напрямую.
Если позже вы захотите изменить версию gcc по умолчанию, запустите sudo update-alternatives --config gcc. Появится приглашение, похожее на это, которое позволит вам выбрать версию для использования:
There are 2 choices for the alternative gcc (providing /usr/bin/gcc).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/gcc-8 800 auto mode
1 /usr/bin/gcc-7 700 manual mode
2 /usr/bin/gcc-8 800 manual mode
Press <enter> to keep the current choice[*], or type selection number:
Более высокий приоритет - тот, который выбирается автоматически update-alternatives.
build-essentialно от других пакетов это напрямую зависит?dpkg-dev g++-8 gcc-8 libc6-dev libc-dev make