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

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

大家好,又见面了,我是你们的朋友全栈君。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

不过后来在进行到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,所以需要将该路径加到自己的环境变量中去。

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

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

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

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

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

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

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

之后再source .bashrc就可以了

参考:

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

gcc 4.6.3 installation gmp 5.0.5 mpfr 3.1.1 errors

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/141352.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • solr与.net课程(七)solr主从复制

    solr与.net课程(七)solr主从复制

    2022年1月2日
    58
  • 【报表制作技巧】动态列报表的制作「建议收藏」

    【报表制作技巧】动态列报表的制作「建议收藏」【报表制作技巧】动态列报表的制作

    2022年4月20日
    55
  • XGBoost使用教程(纯xgboost方法)一

    XGBoost使用教程(纯xgboost方法)一“无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。”一、导入必要的工具包#导入必要的工具包importxgboostasxgb#计算分类正确率fromsklearn.metricsimportaccuracy_score二、数据读取XGBo…

    2022年4月29日
    193
  • hsql数据库_oracle中number转varchar

    hsql数据库_oracle中number转varcharpublicvoidconvertAllTable(DataBasesourceDB,ConnectionoraConn,ConnectionhsqlConn,SqlRecordrecord)throwsException{longtime=System.currentTimeMillis();//建表并导入数据System.out.println(“创建表”+r…

    2022年9月2日
    2
  • 树莓派4b支持5gwifi吗_树莓派4和4b的区别

    树莓派4b支持5gwifi吗_树莓派4和4b的区别树莓派4b与Manjaro,安装、配置、修复WiFi频段5G和CountryCode安装Manjaro到树莓派4b下载Manjaro烧录系统到SD卡并启动修复无线网络5G频段更新软件仓库安装缺失的功能安装Manjaro到树莓派4bManjaroLinux(或简称Manjaro)是基于ArchLinux的Linux发行版,使用Xfce、GNOME和KDEPlasma作为默认桌面环境,和Arch一样,采用滚动更新。其目标是为PC提供易于使用的自由的操作系统。Manjaro

    2022年10月20日
    0
  • android之相机开发

    在android中应用相机功能,一般有两种:一种是直接调用系统相机,一种自己写的相机。我将分别演示两种方式的使用:第一种:是使用Intent跳转到系统相机,action为:android.media.action.STILL_IMAGE_CAMERA关键代码:Intent intent = new Intent(); //调用照相机 intent.setAction(

    2022年3月10日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号