如果你的ubuntu是最新的或者比较新的版本,那么在编译过程中,会出现:
这样的错误,这个错误引起的原因在于gcc的版本太高了,gcc -v 可以看见是4.6.1的;
解决方法为:安装gcc4.4的
安装完成后需要将原gcc替换成gcc4.4的:
进入/usr/bin,用ls -l gcc* 可以看到:
通过一下命令实现替换:
对于g++同理:
<command-line>:0:0: error: "_FORTIFY_SOURCE" redefined [-Werror]
<built-in>:0:0: note: this is the location of the previous definition
cc1plus: all warnings being treated as errors
这样的错误,这个错误引起的原因在于gcc的版本太高了,gcc -v 可以看见是4.6.1的;
解决方法为:安装gcc4.4的
sudo apt-get install gcc-4.4
sudo apt-get install g++-4.4
安装完成后需要将原gcc替换成gcc4.4的:
进入/usr/bin,用ls -l gcc* 可以看到:
lrwxrwxrwx 1 root root 7 2011-10-29 09:11 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6
通过一下命令实现替换:
sudo mv gcc gcc.bak
sudo ln -s gcc-4.4 gcc
对于g++同理:
lrwxrwxrwx 1 root root 7 2011-08-14 15:17 g++ -> g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6
/usr/bin$ sudo mv g++ g++.bak
/usr/bin$ sudo ln -s g++-4.4 g++
现在可以通过gcc -v查看版本信息了,为gcc-4.4就正确了,可以编译了