Как установить gcc / g ++ 9 на CentOS 8 docker (centos: последние) - PullRequest
1 голос
/ 04 мая 2020

Чтобы использовать C ++ 17, включите <filesystem> Мне нужен пакет g cc -9 в моих центах docker.

По умолчанию centos: последний ( ака 8) установит g cc 8.3.1 из обычного дистрибутива.

Есть ли какой-нибудь PPA, тестирующий репо, что угодно, где я могу легко установить пакет ag cc -9 (или позже) (т.е. не собирать его из исходного кода)

Спасибо!

примечание: нужно, чтобы g cc -9 имел хорошую поддержку C ++ 17 <filesystem>.
G CC 9 Примечание к выпуску:

Использование типов и функций в <filesystem> теперь не требует связывания с -lstdc++fs.

sr c: https://gcc.gnu.org/gcc-9/changes.html

note2: CMake 3.16 * не поддерживает какие-либо функции компилятора cxx_filesystem AFAIK.
ref: https://cmake.org/cmake/help/latest/prop_gbl/CMAKE_CXX_KNOWN_FEATURES.html

note3: вы можете нашел журнал здесь: https://github.com/Mizux/KalistoUnpacker/runs/642516660?check_suite_focus=true

1 Ответ

1 голос
/ 04 мая 2020

Просто используйте dnf

dnf -y install gcc-toolset-9-gcc gcc-toolset-9-gcc-c++
source /opt/rh/gcc-toolset-9/enable

ref: https://centos.pkgs.org/8/centos-appstream-x86_64/gcc-toolset-9-gcc-9.1.1-2.4.el8.x86_64.rpm.html

Примечание: source не будет работать внутри Dockerfile, поэтому предпочитаете использовать :

ENV PATH=/opt/rh/gcc-toolset-9/root/usr/bin:$PATH
...