gcc4.8.2安装

摘要: GCC 4.8.2 在 ubuntu 下编译安装小记,遇到一些问题并解决。
以前从没有升级过GCC,一直用系统默认的GCC版本,最近在研究好久没有用过的 C, 便有了升级GCC的想发,大致如下。

环境: ubuntu14.04 , gcc-4.8.2 系统必须已经安装有一个编译器,因为 gcc 也是需要编译的

首先 gcc 编译需要三个额外库,下载并按照下面的顺序安装它们,如下:
1. gmp ftp://ftp.gnu.org/gnu/gmp
2. mpfr ftp://ftp.gnu.org/gnu/mpfr
3. mpc http://www.multiprecision.org/mpc

  1. 编译安装 gmp
# tar -zxvf gmp-5.1.3.tar.gz
# cd gmp-5.1.3
# ./configure
# make && make install
  1. 编译安装 mpfr
# tar -zxvf mpfr-3.1.2.tar.gz
# cd mpfr-3.1.2
# ./configure
# make && make install
  1. 编译安装 mpc
# tar -zxvf mpc-1.0.tar.gz
# cd mpc-1.0
# ./configure
# make && make install

4.将下列动态链接库文件复制或者做一个软链接到 /lib 下,因为后面编译安装 gcc 的时候有可能找不到上面三个依赖库的共享库文件

/usr/local/lib/libmpc.so
/usr/local/lib/libmpc.so.3
/usr/local/lib/libmpfr.so
/usr/local/lib/libmpfr.so.4
/usr/local/lib/libgmp.so
/usr/local/lib/libgmp.so.10
  1. 编译安装 gcc
    gcc 编译参数说明:
    –prefix //默认 gcc 的安装目录,ubuntu下面最好安装到 /usr 下,不然可能会有问题
    –enable-languages //指定 gcc 能编译哪些语言的文件,每种语言用逗号分隔, 例如 c,c++,java
    –disable-multilib //默认gcc 能在32位系统上将代码编译成64位程序,或者在64位系统上编译成32位程序,如果加上这个编译选项则表示关闭这个gcc的交叉编译功能。
    wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2
# tar -zxvf gcc-4.8.2.tar.gz
# cd gcc-4.8.2
# mkdir build
# cd build
# ../configure --prefix=/usr -enable-checking=release -enable-languages=c,c++ -disable-multilib
# make -j2 && sudo make install
      gcc -v 
//test.cpp
#include <iostream>
#include <memory>
using namespace std;
int main()
{
      shared_ptr<int> pInt(new int(10));
      cout << *pInt << endl;
      return 0;
}

编译运行:

g++ -std=c++11 -o test test.cpp
./test

猜你喜欢

转载自blog.csdn.net/liboxiu/article/details/80548501