linux(Centos)下编译安装gcc4.8.2并调试

前言:

        公司开发环境用linux(Centos),据说gcc4.8.2已经完全支持c++11,所以。。。。。


其实这些都是扯淡,主要是公司强制使用gcc4.8.2,华科,没办法只有硬着头皮使用linux开发环境。

1.首先下载gcc4.8.2
   下载地址:​​​http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/​

    想查看这个版本gcc有那些改变,文档:​​https://gcc.gnu.org/gcc-4.8/​

linux(Centos)下编译安装gcc4.8.2并调试_调试

linux(Centos)下编译安装gcc4.8.2并调试_调试_02

2.编译gcc4.8.2
   (1) 进入你的gcc路径 
        cd /**/**/gcc
   (2)解压gcc包
       tar xzvf gcc-4.8.2.tar.gz
(3)cd gcc-4.8.2

(4)请根据readme.txt提示安装gcc 

linux(Centos)下编译安装gcc4.8.2并调试_centos_03

(5)执行配置名命令
./configure --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-c99 --enable-long-long --enable-clocale=gnu --disable-libstdcxx-pch --disable-multilib --enable-languages=c,c++ --prefix=$SHAREHOME/tools/$PLATFORM

其中 SHAREHOME是你的cshrc或者bashrc文件里面的环境变量,我是这样设置的

linux(Centos)下编译安装gcc4.8.2并调试_gcc4.8.2编译_04

(6)执行命令
        make –j 8


(7)执行命令


        make install

      接下来是漫长的等待,大概是1个半小时,视自己的机器而定


  (8)验证是否安装完成


           执行命令


           gcc -v

linux(Centos)下编译安装gcc4.8.2并调试_调试_05

如果失败,多半原因是你的环境变量配置问题

3 测试gcc4.8.2调试
经典的hello world程序测试

main.c  文件

linux(Centos)下编译安装gcc4.8.2并调试_调试_06


生成可执行文件
$ gcc -o hello.out -g main.c -gdwarf-2 -gstrict-dwarf
运行程序

$ ./hello.out

 

linux(Centos)下编译安装gcc4.8.2并调试_编译_07


4. gcc4.8.2 单步调试
   (1) gdb hello.out
  (2)ctrl+x+a        弹出下面界面
(3)r     回车
(4)b main.c:7       定位到main.c文件第7行


linux(Centos)下编译安装gcc4.8.2并调试_编译_08

(5)n   回车   下一步
(6)p result                打印变量值

game over!!!!!!