2025年linux 没有root权限的用户安装GCC[通俗易懂]

linux 没有root权限的用户安装GCC[通俗易懂]在 Linux 下 如果有 root 权限的话 使用 sudo apt install 就可以很方便的安装软件 而且同时也会帮你把一些依赖文件也给编译安装好 但是如果不是用的自己的机器 一般情况下是没有 root 权限的 所以就需要自己动手下载 tar 文件 解压安装 在安装中遇到的最大的问题是依赖的问题 手动下载编译 GCC 首先下载 tar 文件 可以在这里下载 https ftp gnu

在Linux下,如果有root权限的话,使用sudo apt install 就可以很方便的安装软件,而且同时也会帮你把一些依赖文件也给编译安装好。但是如果不是用的自己的机器,一般情况下是没有root 权限的。所以就需要自己动手下载tar文件,解压安装。在安装中遇到的最大的问题是依赖的问题。

手动下载编译GCC ,首先下载tar文件,可以在这里下载https://ftp.gnu.org/gnu/gcc。下载完之后,如果是远程登录的机器,可以使用scp 将文件传到那台机器,如下所示

安装GCC 还需要gmp、mpfr、mpc。下载的时候需要注意它们之间的版本,我下载的版本是:

在安装的时候,需要注意顺序。

首先将tar解压,使用tar -zxvf xxxx.tar.gz。安装的时候,首先安装gmp、之后安装mpfr、最后安装mpc,因为它们之间有依赖关系。

首先进入解压后的gmp-5.1.3文件夹下:

之后使用 ./configure –prefix=/path/to/install 设置安装路径。因为是没有root权限的,所以需要修改安装路径,安装到自己有权限的文件夹下。

如果前一步没有问题,使用make -j4 编译,使用-j 选项可以加快编译速度

最后使用 make install。 完成后,可以在/path/to/install 下看到include lib 与share

mpc、mpfr 的安装方法类似,不过需要在./configure 这一步做一些改动,比如,在安装mpc 的时候,由于依赖gmp 与mpfr,所以需要使用–with ,如下所示:

不过后来在进行到gcc 的make 的时候,出现了错误,”cannot open shared object file: No such file or directory”,错误显示的是找不到mpc的一个.so文件,但是之前已经使用make install 过了,则mpc 的lib文件夹下就有。在网上找到了解决方法,使用export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/your/so ,提示缺少哪个,就添加对应的路径,之后再次使用make 编译gcc。

最后使用make install 之后,gcc 就可以使用了。不过由于系统中有旧版本的GCC,但是由于没有ROOT权限,所以不能将旧版本卸载掉,所以需要添加的自己的path中。

在这之前,先看一下GCC能不能用,图中,下面的GCC 7.2.0就是新安装的GCC。不过目前只有加上路径才能使用当前新的GCC,所以需要将该路径加到自己的环境变量中去。

在自己的用户目录下vi .bashrc, 添加gcc 的bin路径,注意加到PATH 的前面,因为在查找时会首先找到自己安装的GCC

编辑完之后,使用source .bashrc ,之后使用直接使用GCC 就是自己安装的那个版本了

在编译执行程序的时候,发现找不到LIBCXXX之类的信息。需要用当前安装的so 代替之前的。解决方法是,在~下的.bashrc 中编辑export LD_LIBRARY_PATH

之后再source .bashrc就可以了

参考:

GNU/Linux GCC 指定动态库路径_牧马人_新浪博客

gcc 4.6.3 installation gmp 5.0.5 mpfr 3.1.1 errors

编程小号
上一篇 2025-01-17 16:30
下一篇 2025-01-17 16:21

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/148681.html