• GCC安装


    由于安装nodejs时,需要使用编译源码的gcc版本比系统自带的高,因此需要重新安装高版本的gcc。

    1、下载源码包

    从官网上下载源码包:https://gcc.gnu.org/

    我下载的是目前最新版本的7.2.0的:gcc-7.2.0.tar.gz

    2、解压到当前目录

    tar -xvf gcc-7.2.0.tar.gz

    得到 gcc-7.2.0

    3、下载依赖类库

    进入 gcc-7.2.0,执行命令

    ./contrib/download_prerequisites

    该命令会下载gcc所需要的一些依赖文件,在执行该过程时,碰到了一些问题,参考附录一。

    4、建立编译输出目录

    mkdir gcc-build-7.2.0

    5、生成makefile

    进入 gcc-build-7.2.0

    执行以下命令:

     ../gcc-7.2.0/configure --enable-checking-release --enable-language=c,c++ --disable-multilib
    

      

    6、编译

    make -j4

    7、安装

    安装需要有root权限,但不需要切换到root帐号,因此需要使用sudo命令。

    sudo make install

    8、确认当前gcc版本

    gcc -v

    附录一:下载安装依赖

    在初次使用自动下载依赖时,由于网络问题,许久时间都下载不下来,因此尝试过一些其他的方法,下面将尝试过的不可行的方法以及找到的尚未尝试过的方法罗列出来。

    错误方式一:手动下载和安装这几个类库

    根据上述的安装过程我们知道使用下面这个命令:

    ./contrib/download_prerequisites

    可以下载到依赖包,那么这个文件中肯定罗列出来了需要下载的包,我们只需要根据这个列表去寻找到相应的包并下载安装即可。

    但实际上这会导致一个问题,即gcc在编译时会去查找这些依赖,但是由于是自己手动安装的,gcc无法找到,就会出错。

    错误方式二:使用 --with指定依赖的库文件

    通过使用 with 命令指定依赖类库的方式进行安装:

    ./configure 
        --with-gmp-include=/usr/local/include 
        --with-gmp-lib=/usr/local 
        ...

    通过这种方式也没有成功,当然,此处无法确定是这种方式不行,还是我写的路径不对。

    存疑方式三:下载依赖类库之后解压至gcc源码包

    这种方式还没有测试过,此处汇总记录一下,实际上顺着这个思路来解决问题应该是可行的,只不过具体的细节不确定是否可行。

    实际上通过阅读 download_prerequisites 文件可以解决该问题的,其中肯定是包含对于下载的文件放在哪里,或者是解压之后放在哪里,文件名的命名规则是怎么样的。

    tar -xjf gmp-6.1.2.tar.bz2
    mv gmp-6.1.2 gcc-7.2.0/gmp
  • 相关阅读:
    mssqlserver字符串日期互相转换
    使用TripleDES算法加密/解密
    记录google,yahoo,bing爬虫记录的插件
    C#中编写sqlserver中自定义函数,实现复杂报表
    最基本的Socket编程 C#版
    基于.net平台的web框架搭建
    未来五年程序员需要掌握的10项技能
    一段输入框控制代码,包含所有控制条件!
    C#多线程编程实例编程
    C# WinForm开发系列 Socket/WCF/Rometing/Web Services
  • 原文地址:https://www.cnblogs.com/weilu2/p/linux_configuration_gcc.html
Copyright © 2020-2023  润新知