环境配置流程

cmake

cmake 下载

编译 gcc

Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+

  1. GMP (GNU Multiple Precision Arithmetic Library)
  2. MPFR (Multiple Precision Floating-Point Reliable Library)
  3. MPC (Multiple Precision Complex Library)

编译 GMP

curl -L https://gmplib.org/download/gmp/gmp-6.2.1.tar.xz -O

编译 MPFR

curl -L https://www.mpfr.org/mpfr-current/mpfr-4.2.1.tar.gz -O 

编译 MPC

curl -L https://ftp.gnu.org/gnu/mpc/mpc-1.2.1.tar.gz -O

实际编译流程基本遵循:

mkdir build
cd build
../configure --prefix=xxx
make -j
make install

编译 gcc

下载

参考文章:

中间出现了几次错误,可能原因是内存不足,但是感觉不可思议,因为机器有500多G的内存,怎么可能会不足,重复了多次才编译完成

编译 glibc

clangd 报错需要高版本的 glibc,因此需要单独编译一下

clangd: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by clangd)

  1. 下载源码
  2. 编译,也是采用 configure,常规的编译流程

编译时报错 make 版本较低,于是编译安装了新版本的 make,但是编译时 configure 脚本检测不到,采用的解决方式是设置临时环境变量手动指定 make 可执行文件

MAKE=/path/to/new/make ./configure

这个问题解决了,但是新的问题是 make install 时报新的错误

../sysdeps/x86_64/multiarch/memchr-evex-base.S: Assembler messages:
../sysdeps/x86_64/multiarch/memchr-evex-base.S:229: Error: no such instruction: `vpcmpneqb (64 * 4)(%rdi),%zmm17,%k1'

好在之前在并行处理课程实验中遇到过类似错误,应该是需要更新 binutils 的版本

posted @ 2024-08-07 11:43  0x7F  阅读(45)  评论(0编辑  收藏  举报