由于gcc检查过严产生的Open函数通不过问题

在ubuntu 9.04下面编译gcc,总是编译失败,类似下面这样: error: call to ‘__open_missing_mode’ declared with attribute error: open with O_CREAT in second argument needs 3 arguments 后来上网搜了一下,原来是这样的: 从gcc 4.0开始,添加了一些扩展的检查功能,如buffer overflow,ignoring return value等等,早在feroda core 4中,redhat就已经默认打开了gcc的这个扩展,并在此基础上编译了fc4的几乎所有软件;ubuntu直到8.10版本才使能这个功能; 但是这个功能打开之后会造成很多程序编译不过,比如gcc:(,解决方法就是在编译的时候禁止掉fortify扩展: 

      make “CFLAGS=-U_FORTIFY_SOURCE”

你可能感兴趣的:(由于gcc检查过严产生的Open函数通不过问题)