0%

编译gcc

下载代码

code。关于版本,我这里参考的是cppreference, 例如:通过阅读文档,可以知道:完全支持cpp17, 至少需要 gcc-7.0

1
2
3
wget https://ftp.gnu.org/gnu/gcc/gcc-13.2.0/gcc-13.2.0.tar.gz
tar -xzf gcc-13.2.0.tar.gz
cd gcc-13.2.0

编译和安装

1
2
3
4
5
mkdir build
cd build
../configure --prefix=/usr/local/gcc-13.2.0/build --enable-languages=c,c++ --disable-multilib
make
make install
  • --prefix=[PATH]: 这个参数非常重要,确定了gcc的安装路径。就是执行make install后,gcc的安装路径。
  • 当执行完make install后,才会生成完整的gcc。

使用

  • 配置环境变量
    1
    2
    export CC=/usr/local/gcc-13.2.0/build/bin/gcc
    export CXX=/usr/local/gcc-13.2.0/build/bin/g++
  • 写入CMake
    1
    2
    set(CMAKE_C_COMPILER /usr/local/gcc-13.2.0/build/bin/gcc)
    set(CMAKE_CXX_COMPILER /usr/local/gcc-13.2.0/build/bin/g++)
    参考how-to-specify-new-gcc-path-for-cmake