麒麟V10编译安装GCC9.3

在麒麟V10 arm64架构 桌面版系统上编译安装gcc9.3版本

麒麟V10自带的gcc版本是5.4

根据以下步骤顺序执行即可安装成功

# 1.下载解压gcc
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.gz
tar -xvf gcc-9.3.0.tar.gz

cd gcc-9.3.0

# 2.下载gcc依赖
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gmp/gmp-6.1.0.tar.xz
tar -xvf gmp-6.1.0.tar.xz
mv gmp-6.1.0 gmp

wget https://mirrors.tuna.tsinghua.edu.cn/gnu/mpfr/mpfr-3.1.4.tar.gz
tar -xvf mpfr-3.1.4.tar.gz
mv mpfr-3.1.4 mpfr

wget https://mirrors.tuna.tsinghua.edu.cn/gnu/mpc/mpc-1.0.3.tar.gz
tar -xvf mpc-1.0.3.tar.gz
mv mpc-1.0.3 mpc

# 3.编译gcc 需要好几个小时
mkdir gcc-build
cd gcc-build
../configure --prefix=/usr/local/gcc-9.3.0 --disable-multilib --enable-languages=c,c++
make -j4
make install

/usr/local/gcc-9.3.0目录下就是9.3版本的编译器

使用的时候通过环境变量

export CC=/usr/local/gcc-9.3.0/bin/gcc

export CXX=/usr/local/gcc-9.3.0/bin/g++

注: 如何相同的机器需要安装gcc,把/usr/local/gcc-9.3.0整个目录直接拷贝就行了

<think>好的,用户想了解如何安装和使用GCC 12进行编译。首先,我需要回忆GCC安装的一般步骤,并确保覆盖下载源码、解决依赖、配置、编译安装和验证等环节。然后,检查用户提供的引用内容,看看是否有相关信息可以利用。 引用[1]提到在安装GCC前需要准备系统环境,安装基本的开发工具如make和gcc,还有bzip2等。这可能意味着在编译GCC 12之前,需要确保这些工具已经存在。引用[2]是关于麒麟V10 arm系统安装GCC 9.3的,其中提到了下载依赖包、解压、创建build目录、编译安装等步骤,这些步骤应该也适用于GCC 12,但可能需要调整版本号和依赖项。引用[3]涉及到TDM-GCC在Windows上的安装和MATLAB配置,但用户的问题是关于GCC 12的,可能主要是在Linux环境下,所以可能需要忽略这部分,除非用户提到Windows。 接下来,我需要整理GCC 12的安装步骤。首先,用户需要下载GCC 12的源码,可能来自官方镜像。然后安装必要的依赖包,如GMP、MPFR、MPC等,这些通常可以通过系统包管理器安装,或者从GCC的源码中下载。接下来,配置编译选项,比如指定安装路径和启用语言支持。然后进行编译,这可能需要较长时间,特别是如果系统资源有限的话。编译完成后进行安装,并更新环境变量,以便系统识别新安装GCC 12。最后,验证安装是否成功,并可能配置动态链接库。 需要注意的是,用户可能在不同的Linux发行版上操作,比如Ubuntu、CentOS或麒麟系统,步骤可能略有不同。例如,依赖包的名称可能因发行版而异。另外,如果用户是在已有的GCC版本上升级,可能需要处理多版本共存的问题,比如使用update-alternatives来管理不同版本的GCC。 另外,用户可能想知道如何使用新安装GCC 12进行编译,所以需要提供简单的使用示例,比如编译C和C++程序,并说明如何指定编译器版本。 还需要检查是否有潜在的依赖问题,例如,编译GCC本身需要已经有一个可用的编译器,这可能是一个旧的GCC版本或Clang。如果系统没有安装这些,用户可能需要先安装基础的构建工具,如build-essential(在Ubuntu上)。 在回答时,要确保步骤清晰,分点说明,并提示用户注意可能的错误,比如依赖缺失或权限问题。同时,参考引用中的内容,如引用[1]提到的下载源码和依赖,引用[2]中的编译安装步骤,可以适当结合到回答中,并在末尾添加引用标识。 最后,生成相关问题,可能涉及依赖项处理、多版本管理、优化编译选项等,以帮助用户进一步探索。</think>### GCC 12 编译安装与配置教程 #### 一、安装前准备 1. **系统环境要求** - 确保系统已安装基础开发工具(如`make`、`gcc`、`g++`、`bzip2`、`wget`等)[^1]。 - 推荐预留至少 **15GB 磁盘空间**,编译过程可能消耗大量资源。 2. **安装依赖项** 执行以下命令安装必要依赖(以 Ubuntu/Debian 为例): ```bash sudo apt update sudo apt install build-essential libgmp-dev libmpfr-dev libmpc-dev libisl-dev zlib1g-dev ``` --- #### 二、下载与解压源码 1. **下载 GCC 12 源码** 从 GNU 官方镜像或国内镜像下载源码包(如 `gcc-12.3.0.tar.gz`): ```bash wget https://ftp.gnu.org/gnu/gcc/gcc-12.3.0/gcc-12.3.0.tar.gz ``` 2. **解压源码并进入目录** ```bash tar -xvf gcc-12.3.0.tar.gz cd gcc-12.3.0 ``` --- #### 三、编译安装 1. **下载依赖组件** GCC 编译需要额外依赖库,通过脚本自动下载: ```bash ./contrib/download_prerequisites ``` 2. **创建独立编译目录** ```bash mkdir build && cd build ``` 3. **配置编译选项** 执行以下命令(可根据需求调整选项): ```bash ../configure --prefix=/usr/local/gcc-12.3.0 --enable-languages=c,c++,fortran --disable-multilib ``` - `--prefix`:指定安装路径 - `--enable-languages`:选择支持的编程语言 - `--disable-multilib`:禁用多架构库支持(需跨架构编译时需开启) 4. **开始编译** 使用多线程加速编译(示例为 8 线程): ```bash make -j8 ``` **注意**:编译时间较长(通常 1~4 小时),建议保持系统稳定。 5. **安装到系统** ```bash sudo make install ``` --- #### 四、配置与验证 1. **添加环境变量** 编辑 `~/.bashrc` 文件,添加以下内容: ```bash export PATH=/usr/local/gcc-12.3.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/gcc-12.3.0/lib64:$LD_LIBRARY_PATH ``` 生效配置: ```bash source ~/.bashrc ``` 2. **验证安装** ```bash gcc --version ``` 输出应包含 `gcc (GCC) 12.3.0`。 --- #### 五、基本使用方法 1. **编译 C/C++ 程序** ```bash gcc -o hello hello.c # C 程序 g++ -o hellocpp hello.cpp # C++ 程序 ``` 2. **指定优化级别** ```bash gcc -O2 -o optimized_program source.c ``` --- §§ 1. 如何解决 GCC 编译时的依赖冲突问题? 2. GCC 多版本共存时如何切换默认版本? 3. 如何为 GCC 编译启用特定架构的优化选项(如 AVX2)? [^1]: 引用[1] [^2]: 引用[2]
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值