Ubuntu安装设置低版本的gcc

mac2022-06-30  23

在安装Tair的过程中,执行到./configure后出错:

configure: WARNING: ext/hash_map: present but cannot be compiledconfigure: WARNING: ext/hash_map: check for missing prerequisite headers?configure: WARNING: ext/hash_map: see the Autoconf documentationconfigure: WARNING: ext/hash_map: section "Present But Cannot Be Compiled"configure: WARNING: ext/hash_map: proceeding with the compiler's resultconfigure: WARNING: ## --------------------------------- ##configure: WARNING: ## Report this to zongdai@taobao.com ##configure: WARNING: ## --------------------------------- ##checking for ext/hash_map... noconfigure: error: in `/home/ha/tair':configure: error: hash_map not foundSee `config.log' for more details

此时,在确保安装了c++标准库。可使用yum install gcc-c++安装。

如果单独安装gcc以及g++比较麻烦,幸运的是,为了能够编译Ubuntu的内核,Ubuntu提供了一个build-essential软件包。

  查看该软件包的依赖关系,可以看到以下内容:   $ apt-cache depends build-essential  build-essential   依赖: libc6-dev   依赖:  libc6-dev   依赖: gcc   依赖: g++   依赖: make   依赖: dpkg-dev   也就是说,安装了该软件包,编译c/c++所需要的软件包也都会被安装。因此如果想在Ubuntu中编译c/c++程序,只需要安装该软件包就可以了。   安装方法如下:   $sudo apt-get install build-essential

 

安装了c++标准库后,应使用gcc-4.4.7版本,tfs与tair在该版本下可编译通过,淘宝默认的gcc为4.4.7版本。版本过高对语法检查过严,不能编译通过。 我用的是Ubuntu的15.04版本的,gcc版本是4.9.2.使用# gcc -v命令可查看gcc版本号:

gcc version 4.9.2 (Ubuntu 4.9.2-10ubuntu13)

$sudo apt-get install gcc-4.4 $sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 40  (这里“40” 是优先级,值越大优先级越高) $sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 60 (本机自带的设置为60更高的优先级)   选择系统默认的gcc $sudo update-alternatives --config gcc  

There are 2 choices for the alternative gcc (providing /usr/bin/gcc).

Selection Path Priority Status------------------------------------------------------------* 0 /usr/bin/gcc-4.9 60 auto mode 1 /usr/bin/gcc-4.4 40 manual mode 2 /usr/bin/gcc-4.9 60 manual mode

默认系统用最高优先级的, 这里我们选择1就可以了   接下来,g++ 同样的步骤操作 $sudo apt-get install g++-4.4 $sudo apt-get install g++-4.4-multilib   $sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.4 40 $sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 60 $sudo update-alternatives --config g++   Selection    Path              Priority   Status ------------------------------------------------------------ * 0            /usr/bin/g++-4.6   60        auto mode   1            /usr/bin/g++-4.4   40        manual mode   2            /usr/bin/g++-4.6   60        manual mode 选择1.   如果想改为高版本的随时用update-alternatives --config 命令切换!

转载于:https://www.cnblogs.com/wwha/p/5571454.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)