gcc降版本

如果你的ubuntu是最新的或者比较新的版本,那么在编译过程中,会出现:


  1. <command-line>:0:0: error: "_FORTIFY_SOURCE" redefined [-Werror]   
  2. <built-in>:0:0: note: this is the location of the previous definition   
  3. cc1plus: all warnings being treated as errors  

这样的错误,这个错误引起的原因在于gcc的版本太高了,gcc -v 可以看见是4.6.1的;

解决方法为:安装gcc4.4的


  1. sudo apt-get install gcc-4.4  
  2. sudo apt-get install g++-4.4  

安装完成后需要将原gcc替换成gcc4.4的:

进入/usr/bin,用ls -l gcc* 可以看到:


  1. lrwxrwxrwx 1 root root      7 2011-10-29 09:11 gcc -> gcc-4.6  
  2. -rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4  
  3. -rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6  

通过一下命令实现替换:


  1. sudo mv gcc gcc.bak   
  2. sudo ln -s gcc-4.4 gcc  

对于g++同理:


  1. lrwxrwxrwx 1 root root      7 2011-08-14 15:17 g++ -> g++-4.6  
  2. -rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4  
  3. -rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6  
  4.   
  5. /usr/bin$ sudo mv g++ g++.bak   
  6. /usr/bin$ sudo ln -s g++-4.4 g++  

现在可以通过gcc -v查看版本信息了,为gcc-4.4就正确了,可以编译了

你可能感兴趣的:(gcc降版本)