在Debian系统上编译GCC(GNU Compiler Collection)源码需要遵循以下步骤:
sudo apt-get update
sudo apt-get install build-essential flex bison libgmp-dev libmpfr-dev libisl-dev libcloog-isl-dev libncurses5-dev libmpc-dev texinfo
这些包包括编译器、构建工具、词法分析器、语法分析器、大数库、浮点数库、整数集合库、NCurses库、多精度计算库和TeXinfo文档系统。
wget命令直接下载,例如:wget https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz
tar命令解压下载的源码包:tar -xf gcc-11.2.0.tar.gz
cd gcc-11.2.0
./contrib/download_prerequisites
mkdir build && cd build
configure脚本配置构建选项。例如,要为Debian系统编译GCC,可以使用以下命令:../configure --prefix=/usr/local/gcc-11.2.0 --enable-languages=c,c++,fortran --disable-multilib
这将安装GCC到/usr/local/gcc-11.2.0目录,并启用C、C++和Fortran语言支持。--disable-multilib选项表示不构建32位库。
make命令编译源码。可以使用-j选项指定并行编译任务的数量,以加快编译速度。例如,要使用4个并行任务编译GCC,请运行:make -j4
make install命令安装GCC:sudo make install
sudo update-alternatives --install /usr/bin/gcc gcc /usr/local/gcc-11.2.0/bin/gcc 60 --slave /usr/bin/g++ g++ /usr/local/gcc-11.2.0/bin/g++ --slave /usr/bin/gfortran gfortran /usr/local/gcc-11.2.0/bin/gfortran
现在,可以使用gcc --version和g++ --version命令检查新安装的GCC版本。
请注意,上述步骤适用于GCC 11.2.0版本。对于其他版本,只需将下载链接和版本号更改为相应的值即可。