默认是安装到 /usr/local/bin 目录下,指定目录 --prefix=/usr/local/gcc
然后输入 gcc -v ,会看到:
如果通过 源码 升级了gcc,没有升级动态库则在运行或者编译某些软件时有可能出现 /usr/lib64/libstdc++.so.6: version 'GLIBCXX_3.4.21' not found 的错误。
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBC
如果老版本的 gcc 如5.4等,可能是没有这么多的动态库信息。
运行:`find / -name "libstdc++.so*"`
我的系统因为之前通过命令行安装过 gcc 7.1 版本,因为能查找到比较多的动态库文件,
安装了Ubuntu 20.04之后,通过命令行
sudo apt-get install build-essential
安装gcc,再通过命令行
gcc -v
可查看gcc版本为gcc9
如果想用低版本的gcc,比如gcc5,尝试输入命令
sudo apt-get install gcc-5
会提示找不到gcc5的安装包
那么就需要添加较低版本的源
网上搜索得到gcc5对应的Ubuntu版本为16,接下来就对Ubuntu20.04的源文件source.list进行编辑,增加Ubuntu16的源
通过命令用gedit编辑器(也选择其他编辑器,如vim,mousepad等)打开source.list文件,
sudo gedit /etc/apt/sources.list
在文件尾部增加Ubuntu16的源,我使用的是阿里云的源
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe
保存文件后,输入命令,更新源
sudo apt-get update
然后输入命令,查看gcc5可选的版本
apt-cache policy gcc-5
选择其中一个版本进行安装
sudo apt-get install gcc-5=5.4.0-6ubuntu1~16.04.12
g++5的安装是类似的步骤
sudo apt install g++-5
然后查看gcc版本
gcc -v
发现版本还是gcc9
通过命令查询本机gcc已安装的版本
ls /usr/bin/gcc*
可以看到有gcc9和gcc5
这个时候需要管理多版本的gcc,使我们想要的gcc5成为默认版本
输入命令
根据提示,选择gcc-5对应的编号1 回车即可
最后gcc -v查看默认gcc版本,应当已经切换为gcc5
如果要对g++的多版本进行管理,只需将上面命令行中的gcc替换为g++
链接: https://www.jianshu.com/p/e823f89787d6
您好,安装Ubuntu系统时,可以选择安装GCC和Make。GCC是GNU编译器套件,是一种用于编译C、C++、Objective-C、Fortran等编程语言的编译器。Make是一种自动化编译工具,可以根据源程序中的依赖关系,自动编译源程序。安装Ubuntu系统时,可以在安装过程中选择安装GCC和Make,也可以在安装完成后,使用apt-get或aptitude等工具安装GCC和Make。安装GCC和Make后,就可以使用它们来编译源程序,从而实现程序的编译和运行。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)