为了使用C++17包括<filesystem>,我需要gcc-9包在我的中心码头.
默认情况下,centos:最新 (又名8)将从常规发行版回购中安装gcc 8.3.1。
有什么PPA,测试回购,什么的,我可以很容易地安装gcc-9 (或更高版本)软件包(即不是从源代码构建它)。
谢谢!
注:需要gcc-9具备良好的C++17 <filesystem>支持.
GCC 9号新闻稿:
现在,使用
<filesystem>中的类型和函数不需要与-lstdc++fs链接。
src:https://gcc.gnu.org/gcc-9/changes.html
note2: CMake 3.16*不支持任何cxx_filesystem编译器特性AFAIK。
参考文献:FEATURES.html
note3:您可以在这里找到日志:focus=true
发布于 2020-05-04 13:14:12
只需使用dnf
dnf -y install gcc-toolset-9-gcc gcc-toolset-9-gcc-c++
source /opt/rh/gcc-toolset-9/enable参考文献:64.rpm.html
注意:source不会在Dockerfile中工作,所以更喜欢使用:
ENV PATH=/opt/rh/gcc-toolset-9/root/usr/bin:$PATH或者更好
RUN dnf -y install gcc-toolset-9-gcc gcc-toolset-9-gcc-c++
RUN echo "source /opt/rh/gcc-toolset-9/enable" >> /etc/bashrc
SHELL ["/bin/bash", "--login", "-c"]
RUN gcc --version发布于 2022-11-11 13:16:36
这个命令对我有用
dnf install gcc --best --allowerasinghttps://stackoverflow.com/questions/61590926
复制相似问题