更换源
参考 CentOS 7更换为阿里云源
安装依赖
sudo yum groupinstall -y "Development Tools"
sudo yum install -y wget git gcc gcc-c++ make \
gmp-devel mpfr-devel libmpc-devel \
texinfo bison flex
下载代码
cd ~
git clone https://github.com/richfelker/musl-cross-make
cd musl-cross-make
创建配置文件
cat > config.mak << 'EOF'
# 目标架构
TARGET = x86_64-linux-musl
# 安装目录
OUTPUT = /opt/musl-toolchain
# 组件版本(使用稳定版本)
# GCC_VER = 11.2.0
# MUSL_VER = 1.2.3
# BINUTILS_VER = 2.38
# GMP_VER = 6.2.1
# MPC_VER = 1.2.1
# MPFR_VER = 4.1.0
# 通用配置
COMMON_CONFIG += --disable-nls
# GCC 配置:启用 C 和 C++ 支持
GCC_CONFIG += --enable-languages=c,c++
GCC_CONFIG += --disable-libquadmath
GCC_CONFIG += --disable-decimal-float
GCC_CONFIG += --disable-multilib
EOF
编译
make -j$(nproc)
手动下载源码
mkdir -p sources
cd sources
wget https://mirrors.aliyun.com/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar. xz
wget https://mirrors.aliyun.com/gnu/binutils/binutils-2.38.tar.xz
wget https://mirrors.aliyun.com/gnu/gmp/gmp-6.2.1.tar.xz
wget https://mirrors.aliyun. com/gnu/mpfr/mpfr-4.1.0.tar. xz
wget https://mirrors.aliyun.com/gnu/mpc/mpc-1.2.1.tar. gz
wget https://musl.libc.org/releases/musl-1.2.3.tar.gz
cd ..
make -j$(nproc)
安装
sudo make install
配置环境变量(可选)
echo 'export PATH=/opt/musl-toolchain/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
x86_64-linux-musl-gcc --version
x86_64-linux-musl-g++ --version