麒麟系统执行gcc/g++提示“command not found”说明编译器缺失,须先用cat /etc/os-release确认分支类型:ID=ubuntu/kylin且VERSION_ID含20.04/22.04为Debian系,用sudo apt install build-essential;ID=anolis/centos或PLATFORM_ID含el8/el9为RHEL系,用sudo dnf groupinstall "Development Tools"并补装gcc-c++。

在麒麟系统上执行gcc或g++命令提示“command not found”,说明底层编译器环境缺失,必须根据系统实际分支类型选择对应安装路径,否则包管理命令会直接报错或安装无效组件。
第一步:确认麒麟OS所属分支类型
打开终端,运行以下命令:
cat /etc/os-release | grep -E "(ID|VERSION_ID|PLATFORM_ID)"
观察输出结果:若ID=ubuntu或ID=kylin且VERSION_ID以“20.04”“22.04”开头,则为Debian系;若ID=anolis、ID=centos或ID=kylin且PLATFORM_ID以"el8"或"el9"结尾,则为RHEL系;若ID=kylin且VERSION_ID含"SP1"或"SP2"但无明确Ubuntu标识,需立即执行which apt和which dnf——【哪个命令返回路径,后续就只能用它,混用会导致包管理器彻底失效】。
Debian系(Kylin V10桌面版/服务器版)安装方法
方法一:APT在线安装(推荐新手)
1、更新软件源索引:sudo apt update
2、安装build-essential元包:sudo apt install build-essential
3、验证是否完整:gcc --version && g++ --version——若g++报错,说明未被包含,必须额外执行sudo apt install g++。
方法二:离线DEB批量部署(ARM64无网络环境专用)
1、在同版本联网机中生成依赖列表:apt-get install g++ --print-uris | grep "^'" | sed "s/'//g" | awk '{print $1}' > gpp-deps.list
2、下载全部.deb包:wget -i gpp-deps.list
3、拷贝所有.deb到离线机/home/user/gcc-offline目录,进入该目录后执行:sudo dpkg -i *.deb
4、【这一步必须执行,否则g++运行时报libstdc++6缺失】:sudo apt-get install -f
RHEL系(Kylin Server V10 SP1/SP2)安装方法
第一步:启用基础软件源(部分镜像默认禁用)
sudo dnf config-manager --set-enabled baseos appstream
第二步:安装开发工具组
sudo dnf groupinstall "Development Tools"
第三步:补装C++支持
sudo dnf install gcc-c++——某些精简镜像中该组件未随组自动安装,跳过会导致编译C++代码失败。
第四步:验证关键路径是否存在
ls /usr/bin/gcc /usr/include/stdio.h /usr/lib64/libc.so
源码编译安装GCC 9.3(ARM64定制需求)
适用场景:麒麟V10 ARM64服务器需使用GCC 9.3,但系统自带GCC 7.3无法满足项目要求。
① 安装编译依赖:sudo yum install -y gcc gcc-c++ glibc-static make bzip2
② 下载源码并解压:wget https://ftp.gnu.org/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.gz → tar -xf gcc-9.3.0.tar.gz
③ 进入源码目录,下载预编译依赖:cd gcc-9.3.0 → ./contrib/download_prerequisites
④ 若该命令报错无法下载gmp/mpfr/mpc,则手动从清华镜像站获取并解压重命名至gcc-9.3.0目录下,确保目录结构为:gcc-9.3.0/gmp、gcc-9.3.0/mpfr、gcc-9.3.0/mpc
⑤ 创建build目录并配置:mkdir build → cd build → ../configure --prefix=/usr/local --enable-checking=release --enable-languages=c,c++ --disable-multilib
⑥ 编译并安装:make -j$(nproc) → sudo make install











