使用道具 举报
最初由 鱼儿小 发表 在redhat9成功装了oracle后了,发现proc预处理有问题。 具体表现为,如果.pc文件中包含“#include <stdio.h>”之类的语句,执行proc预处理时就会报无法打开在stdio.h中包含的stddef.h这个文件,我查看了stdio.h,里面有的确一行“#include <stddef.h>”,然后proc后面的错误信息就是报找不到size_t这个类型的定义(这个类型我在sco和aix上看了是在stddef中定义的,linux我忘看了~~)。 然而,我去/usr/include下看,真的没有stddef.h文件,而sco和aix下都是有的,这可能是编译器版本的略微区别吧,而在linux下写个c程序,里面加句“#include <stddef.h>”后编译照样能通过,证明gcc对stddef.h有内部的处理方法,可proc怎么办啊??它找不着stddef.h就报错啦~~~ 我装的linux是redhat9,网上下的,典型安装那种,具体的内核版本和gcc版本我没查,估计都和缺省一样吧~~ 今天搞了2个多小时,真的晕了,请斑竹帮我看看~~先谢了~~ ps:请各位兄弟高抬贵手,不要在此贴灌水,发表回帖前自己先试验一下,这个问题解决后力争进入“问题解决之道”,让大家都知道怎么处理这个问题,也谢谢先~~:help :help :help
最初由 鱼儿小 发表 3楼的,我没来得及试,不过我可以告诉你,如果我不写#include <stdio.h>,预处理和编译没问题的,前提是.pc这个程序比较简单,如仅仅连接一下数据库再断开之类的。 如果程序复杂点时,必须引用头文件时,就报错了,因为无论那个头文件饶到最后都会引用stdio.h
本版积分规则 发表回复 回帖后跳转到最后一页