Ubuntu下编译insight错误:
cc1: warnings being treated as errors
.././gdb/cli/cli-cmds.c: In function ‘pwd_command’:
.././gdb/cli/cli-cmds.c:323: error: ignoring return value of ‘getcwd’, declared with attribute warn_unused_result
make[2]: *** [cli-cmds.o] 错误 1
make[2]:正在离开目录 `/home/qiang/tools/insight-6.8-1/gdb’
make[1]: *** [all-gdb] 错误 2
make[1]:正在离开目录 `/home/qiang/tools/insight-6.8-1′
make: *** [all] 错误 2
解决方案:
方法1.修改源代码,
linux-nat.c:2879:error:ignoring return value of ‘fgets’,declared with attribute warn_unused_result
老代码
fgets(buffer, MAXPATHLEN, procfile);
解决的方法是
char* temp_p = fgets(buffer, MAXPATHLEN, procfile);
类似的问题还有几个,基本上都是gdb的问题,照着解决就行了,我就不一个个说了。
方法2.进入insight-6.8-1/gdb目录,打开Makefile文件搜索-Werror
老代码
WERROR_CFLAGS = -Werror
新代码
WERROR_CFLAGS = #-Werror
这2个办法都可以通过编译,就可以使用insight了。