移植QT4.5 Segmentation Fault报错解决方法和字体偏小的办法

来源:互联网 发布:python hdfs sumry 编辑:程序博客网 时间:2024/06/05 19:06

移植QT4.5 Segmentation Fault报错解决方法和字体偏小的办法

我想大多数人都跟我一样直接用友善提供的arm-linu-gcc 4.3.2的版本来编译QT程序,所以遇到这个错误是必然的。

这个错误的原因主要是因为程序在编写的时候,指针的处理不当,而出现在移植QT身上,是因为交叉编译器,优化过度了,因此有两个解决办法。

办法1:安装 eabi的,版本为4.1.2 的交叉编译器

详细可以参考http://www.qtcn.org/bbs/read.php?tid=22059

办法2:取消,交叉编译器的优化选项,去掉Makefile 的 -O2选项,不过程序会变得稍微大了,本人采用方法2,暂时没遇到什么特殊情况。(这是网上有人说可以,但我说了N次都不行,不知何因)
办法3: 最後找出原因是./cofigure 下達參數~所造成(必須要拿掉不必要的功能)~我不知道是哪個~這是參考人家的~提供給大家觀看记得在做文件系统时要把最新的库文件加进去,我就是忘了这个,把以前的库加进去了,没及时替换掉,弄到凌晨三点也没搞出了,第二天早上刷牙时才想到库没及时替换了

 

所以在编译qt-embedded-linux-opensource-src-4.5.1是配置改为如下:

 

./configure -prefix /mini2440 -fast -no-largefile -no-qt3support -no-mmx -no-3dnow -no-xmlpatterns -no-webkit -no-svg -nomake demo -nomake docs -no-openssl -embedded arm -little-endian -no-qvfb -no-mouse-qvfb -depths 16 -confirm-license -xplatform qws/linux-arm-g++ -no-xcursor -no-xfixes -qt-mouse-tslib -I/home/tslib/include -L/home/tslib/lib

要是这样还不行的话,在这个基础上再用办法2试试

PS:对于QT4.5.1的移植字体,可能偏小,这是由于字体库的原因,QT本身不带汉字的字库,所以只能选择一个稍微好看的字库,在执行的时候,可以输入 ./hello -qws -fn SIMHEI &
原创粉丝点击