qt-x11编译问题
本帖最后由 甲壳虫1991 于 2014-8-30 22:46 编辑最近使用qt-x11-opensource-src-4.5.3.tar.gz编译qt,出现失败,实在查不到参考也一直没有解决,望前辈指教,信息如下: 声明,gcc 4.8.3 g++ 4.8.3gmake(make) 3.8.2
下面是我自己的分析过程,望指导
1,我在解压源码后,执行了./configure -qvfb命令,然后顺利通过,再执行gmake 时运行了七八分钟后出错,信息如下
看着好几处错误,其实仅由一两处造成,请前辈别害怕,
提示它说有不完全类型非法使用,我就去看源程序xxx.cpp,代码如图
一看代码,我就去查找这个info_infoop结构体定义,
然后再这个xxx.cpp文件中没有的他的定义,
再去看包含头文件
因为比较多,没有继续查找定义实现在哪,但是从第二条错误中可以看出,
在xxx.h中(见出错信息)
这是png_infoop的出处,而且整个xxx.h文件中,只有这一处出现了png_info_def,再看这个xxx.h包含的头文件,仅有这两个
再去看了这两个文件,用搜索关键字,也找不到png_info_def的出处,
所以我推测,在xxx.h中仅声明了png_info,然后又用它声明了一个指针png_infoop,因为没有定义实现,所以是前向声明,而在包含xxx.h的xxx.cpp中
也没有他的定义,所以它是一个不完全类型,也不知道它的具体成员,所以在xxx.cpp中整体使用info_ptr可以,一旦出现info_ptr->就完蛋了,因为
根本没有他的定义实现,所以爆出前向声明错误和不完全类型的非法访问错误
这是我的分析,不知前辈觉得合理不?我的问题如下
1----这qt源码应该是哪些公司经过测试的,代码上应该不会有问题啊,为啥会出错,会编译不过呢?因为环境,工具的版本?
2----我对整个qt代码的结构并不了解,我根本没有办法修改,如果您遇到应该采取什么办法,才能解决问题呢
我把这两个源码文件也附上,如果您有兴趣探究可以下载查看,也希望可以和您交流请教!
先自己顶自己一下 甲壳虫1991 发表于 2014-8-30 15:59
先自己顶自己一下
这个我们也没做过,不了解
页:
[1]