gcc动态库升级

简介: gcc动态库升级

阅读目录

回到顶部

1.报错

1

error: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /opt/apps/venus-backend/node_modules/canvas/build/Release/canvas.node)

回到顶部

2.解决方案

升级gcc动态库

回到顶部

3.解决步骤

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

1.查看当前动态库版本

strings /usr/lib64/libstdc++.so.6 | grep CXXABI

CXXABI_1.3

CXXABI_1.3.1

CXXABI_1.3.2

CXXABI_1.3.3

CXXABI_1.3.4

CXXABI_1.3.5

CXXABI_1.3.6

CXXABI_1.3.7

CXXABI_TM_1

发现最高版本只有1.3.7,没有1.3.9的。

 

2.下载最新动态库并编译

wget http://ftp.gnu.org/gnu/glibc/glibc-2.34.tar.xz

tar -xvf glibc-2.34.tar.xz

mkdir glibc-build  #不能在glibc当前目录下运行configure,否则会报错"configure: error: you must configure in a separate build directory",需要新建编译目录

mkdir glibc-install

 

cd  glibc-build

../glibc-2.34/configure --prefix=/root/glibc-install

make &&make install

cp /root/glibc-install/lib/libc-2.34.so

cd  /usr/lib64/

ll libstdc++.so.6 #查看当前系统版本,用于恢复

lrwxrwxrwx. 1 root root 19 Jan 28  2021 libstdc++.so.6 -> libstdc++.so.6.0.19

rm -f libstdc++.so.6 && ln -sv libc-2.34.so libstdc++.so.6

 

 

源码包下载地址:

http://mirrors.ustc.edu.cn/gnu/libc/

http://ftp.gnu.org/gnu/glibc/

https://centos.pkgs.org/7/centos-x86_64/libstdc++-4.8.5-44.el7.x86_64.rpm.html

参考地址:https://blog.csdn.net/u012927281/article/details/51704855

回到顶部

4.使用现有  

1

2

3

链接:https://pan.baidu.com/s/1vvGFYDG9GkrFNqf2FaUdoA

提取码:4mul

直接替换即可

回到顶部

5.遇到的问题

make的版本低不能使用,默认带的是 3.82 不满足 make 4.0 的最低要求

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

cd /tmp

 

wget http://mirrors.ustc.edu.cn/gnu/make/make-4.0.tar.gz

tar xf make-4.0.tar.gz

cd make-4.0/

./configure

make

make install

make -v

# 此时的 make 还是3.82 与环境变量有关系

/usr/local/bin/make -v

# 这是我们刚安装的 make 它的版本是4.0

whereis make

# 找一下都有哪些 make

cd /usr/bin/

mv make make.bak

# 把默认的 make 改名

ln -sv /usr/local/bin/make /usr/bin/make

# 建立一个软连接

make -v

# 查看一下大功告成

相关文章
|
7月前
|
编译器 Linux 开发工具
|
7月前
|
NoSQL 编译器 开发工具
006.gcc编译器
gcc是什么?
89 0
006.gcc编译器
|
7月前
|
存储 NoSQL 算法
从一个crash问题展开,探索gcc编译优化细节
问题分析的过程也正是技术成长之路,本文以一个gcc编译优化引发的crash为切入点,逐步展开对编译器优化细节的探索之路,在分析过程中打开了新世界的大门……
|
2月前
|
编译器 Linux C语言
gcc的编译过程
GCC(GNU Compiler Collection)的编译过程主要包括四个阶段:预处理、编译、汇编和链接。预处理展开宏定义,编译将代码转换为汇编语言,汇编生成目标文件,链接将目标文件与库文件合并成可执行文件。
81 11
|
4月前
|
编译器 开发工具 C语言
Gcc 链接文件
Gcc 链接文件
41 4
|
4月前
|
编译器 C语言 C++
MinGW安装gcc
MinGW安装gcc
97 0
|
6月前
|
自然语言处理 编译器 Go
GCC:GNU编译器
GCC:GNU编译器
|
6月前
|
Java 编译器 Linux
技术经验解读:【转载】详解GCC的下载和安装(源码安装)
技术经验解读:【转载】详解GCC的下载和安装(源码安装)
193 0
|
7月前
|
C语言
gcc的简易用法
【5月更文挑战第10天】gcc的简易用法。
70 8
|
6月前
|
C语言
关于如何解决mingw64安装后配置完环境变量仍然执行不了gcc命令
关于如何解决mingw64安装后配置完环境变量仍然执行不了gcc命令