64位系统下,执行pclint检查的问题: Unable to open include file 'stddef.h'
工作中碰到的一个问题:
项目的编译原来是在32位linux系统上进行编译的,并且是通过wine运行pclint.exe来进行lint检查。
现在要把项目放到docker container中进行编译,因此就变成了64位的系统。我目前使用的container的images是基于docker HUB上的gcc4.8.3制作的,从该镜像的dockerfile看,应该是debian wheezy版本的。在这上面编译没有问题,可以正常进行。但是如果打开lint开关,使得进行lint检查,就会出现如下错误:
# include <stddef.h>
\usr\include\stdio.h 34 Error 322: Unable to open include file 'stddef.h'
查看/usr/include/中确实没有stddef.h文件。google出来的结果中,都是和系统中安装了oracle相关的原因,而我这个里面并没有oracle的内容。
以下是我的系统的一些情况:
jenkins@968e999c2fca:/usr/include/linux$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-unknown-linux-gnu/4.8.3/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /usr/src/gcc/configure --disable-multilib --enable-languages=c,c++
Thread model: posix
gcc version 4.8.3 (GCC)
jenkins@968e999c2fca:/usr/include/linux$ sudo find / -name stddef.h
[sudo] password for jenkins:
/usr/include/linux/stddef.h
/usr/lib/gcc/x86_64-linux-gnu/4.7/include/stddef.h
/usr/local/lib/gcc/x86_64-unknown-linux-gnu/4.8.3/include/stddef.h
/usr/src/gcc/gcc/ginclude/stddef.h
/usr/src/gcc/libstdc++-v3/include/c_compatibility/stddef.h
PS:在出现这个问题前,还碰到一个找不到/usr/include/bits/predefs.h的问题,在安装了gcc-multilib后就没有了。
请大家帮忙给点指导。谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
过了五年,问题解决了么?同问...