在北京OURS-PXA270移植基于Qt3+opencv-0.9.7的应用程序,遇到的种种问题
2010-08-02 17:29
218 查看
本人这两天在移植基于
Qt3+opencv-0.9.7
的应用程序到北京
OURS-PXA270
开发板上,其中的问题多多,到现在还没完全解决,但是也解决了遇到的一些问题,现在把它记录下来,以免以后再碰到类似问题,不知从何下手。
1、
在交叉编译时,提示在库目录中没有找到类似这样的库(
-lcv
,
-lcvaux
,
-lcxcore
,
-lhighgui
):
我在交叉编译之前,首先用非交叉编译并运行通过,但是到我再使用交叉编译的时候却无法找到那样的库,但我明明就是有添加进去的。后来在网上搜索,和向网友大牛们提问的时候,他们告诉我这是因为编译器的版本不一致,生成那些动态库的是一个编译器版本,但是编译工程文件的时候又是另外一个版本的编译器,所以即便你有把那库添加进去了也是找不到的,因为这不是它编译出来的库,它不认你。(没办法,呵……)
这样,我只能从新用交叉编译生成库文件了即使用
arm-linux-gcc
重新编译生成那些库,然后,把这些重新生成的库替换原来的,再重新编译工程,这样就顺利通过了。
2、
关于
ARM10
开发板上“
Illegal instruction
”的错误提示:
昨天把全部编译(在我自己电脑上编译的,跟实验室的电脑环境有点不一样,导致问题)好了的程序烧到开发板上,(一切顺利,心里有点小高兴,殊不知问题还多多呢)我运行“
./camera –qws
”这个用到了
opencv
是视觉库的,出来错误提示:
“
Illegal instruction
”,我先是在网上搜索答案,大多都是说是什么
EABI
吖,什么编译器不匹配啦,
busybox
什么的,说实话,我都不懂
http://blog.csdn.net/qiaoliang328/archive/2009/11/24/4866367.aspx
,那些也没法帮我解决我的问题。我就继续问大牛们,他们很热心,帮我慢慢的分析;
最后,发现应该是浮点运算问题,因为视觉库
opencv
很多都用到浮点运算的,他们叫我检查
FP
的配置,我哪懂啊,又是上网查,难啊……后来,后来,他说如果我编译器支持软浮点运算的话,那就全部使用软浮点运算指定编译。这样我编译
“
make –msoft-float
”,“
–msoft-float
”参数指定使用软浮点运算,问题来了,提示说:“
./OpenCVlib/libhighgui.so uses hardware FP, whereas camera uses software FP
File format not recognized: failed to merge target specific data of file ./OpenCVlib/libhighgui.so
”
大概的意思就是“
libhighgui.so
”使用
hardware FP
,而“
camera
”使用
software FP
,所以不能通过(我这次是拿到实验室的电脑了,
libhighgui.so
是在我自己电脑上编译的,不一样)。所以我就照着大大说,全部用参数“
-msoft-float
”指定软浮点运算。就是在重新编译生成库,也使用“
-msoft-float
”参数,编译工程文件是也使用“
-msoft-float
”,这样,大家都是使用软浮点运算了,所以就没有出错啦,通过……
编译好了以后,我再使用“
arm-linux-readelf -e camera
”来查看,发现是使用了软浮点了,有这么一句出来:“
Flags: 0x202, has entry point, GNU EABI, software FP
”,之前是没有“
software FP
”的,还有那个“
libhighgui.so
”也是一样。
OK
……!!!完成。
再到开发板上运行再也没有报错了!
相关的浮点运算与
Qt
移植问题,有一篇很好的文章参考:
http://hi.baidu.com/adrain001/blog/item/7a40ac08777b409d0a7b82ac.html
3
、我有些程序放到开发板上面没有界面显示,其中它们都有包含
GSM
的,但有些可以显示,可以显示的都没有包含
GSM
的,所以我怀疑了,应该是
GSM
这个模块的程序在出错了。问题还没有解决呢……期待解决……
Qt3+opencv-0.9.7
的应用程序到北京
OURS-PXA270
开发板上,其中的问题多多,到现在还没完全解决,但是也解决了遇到的一些问题,现在把它记录下来,以免以后再碰到类似问题,不知从何下手。
1、
在交叉编译时,提示在库目录中没有找到类似这样的库(
-lcv
,
-lcvaux
,
-lcxcore
,
-lhighgui
):
我在交叉编译之前,首先用非交叉编译并运行通过,但是到我再使用交叉编译的时候却无法找到那样的库,但我明明就是有添加进去的。后来在网上搜索,和向网友大牛们提问的时候,他们告诉我这是因为编译器的版本不一致,生成那些动态库的是一个编译器版本,但是编译工程文件的时候又是另外一个版本的编译器,所以即便你有把那库添加进去了也是找不到的,因为这不是它编译出来的库,它不认你。(没办法,呵……)
这样,我只能从新用交叉编译生成库文件了即使用
arm-linux-gcc
重新编译生成那些库,然后,把这些重新生成的库替换原来的,再重新编译工程,这样就顺利通过了。
2、
关于
ARM10
开发板上“
Illegal instruction
”的错误提示:
昨天把全部编译(在我自己电脑上编译的,跟实验室的电脑环境有点不一样,导致问题)好了的程序烧到开发板上,(一切顺利,心里有点小高兴,殊不知问题还多多呢)我运行“
./camera –qws
”这个用到了
opencv
是视觉库的,出来错误提示:
“
Illegal instruction
”,我先是在网上搜索答案,大多都是说是什么
EABI
吖,什么编译器不匹配啦,
busybox
什么的,说实话,我都不懂
http://blog.csdn.net/qiaoliang328/archive/2009/11/24/4866367.aspx
,那些也没法帮我解决我的问题。我就继续问大牛们,他们很热心,帮我慢慢的分析;
最后,发现应该是浮点运算问题,因为视觉库
opencv
很多都用到浮点运算的,他们叫我检查
FP
的配置,我哪懂啊,又是上网查,难啊……后来,后来,他说如果我编译器支持软浮点运算的话,那就全部使用软浮点运算指定编译。这样我编译
“
make –msoft-float
”,“
–msoft-float
”参数指定使用软浮点运算,问题来了,提示说:“
./OpenCVlib/libhighgui.so uses hardware FP, whereas camera uses software FP
File format not recognized: failed to merge target specific data of file ./OpenCVlib/libhighgui.so
”
大概的意思就是“
libhighgui.so
”使用
hardware FP
,而“
camera
”使用
software FP
,所以不能通过(我这次是拿到实验室的电脑了,
libhighgui.so
是在我自己电脑上编译的,不一样)。所以我就照着大大说,全部用参数“
-msoft-float
”指定软浮点运算。就是在重新编译生成库,也使用“
-msoft-float
”参数,编译工程文件是也使用“
-msoft-float
”,这样,大家都是使用软浮点运算了,所以就没有出错啦,通过……
编译好了以后,我再使用“
arm-linux-readelf -e camera
”来查看,发现是使用了软浮点了,有这么一句出来:“
Flags: 0x202, has entry point, GNU EABI, software FP
”,之前是没有“
software FP
”的,还有那个“
libhighgui.so
”也是一样。
OK
……!!!完成。
再到开发板上运行再也没有报错了!
相关的浮点运算与
Qt
移植问题,有一篇很好的文章参考:
http://hi.baidu.com/adrain001/blog/item/7a40ac08777b409d0a7b82ac.html
3
、我有些程序放到开发板上面没有界面显示,其中它们都有包含
GSM
的,但有些可以显示,可以显示的都没有包含
GSM
的,所以我怀疑了,应该是
GSM
这个模块的程序在出错了。问题还没有解决呢……期待解决……
相关文章推荐
- 在北京OURS-PXA270移植基于Qt3+opencv-0.9.7的应用程序,遇到的种种问题
- 应用程序的移植(基于Qt3与opencv-0.9.7制作)
- 应用程序的移植(基于Qt3与opencv-0.9.7制作)
- QT+opencv+摄像头调试过程中遇到的问题
- Arm下使用Qt和Opencv进行图像处理的入门例程和遇到的问题
- 服务器(Ubuntu 12.04 LTS)上编译基于OpenCV的项目遇到的问题及解决方案
- 在Qt中移植VPU编解码程序时遇到的问题
- qt编译caffe遇到的opencv版本问题
- OpenCV在ARM-linux上的移植过程遇到的问题3---共享库中嵌套库居然带路径【未解决】
- DFB [03] 移植遇到的实际问题 基于某著名平台
- 移植opencv2.4.9遇到的问题与解决方法
- Qt4项目移植到Qt5遇到的问题(更新)
- 基于vlc的播放器,qt做界面,遇到的问题
- 移植Qt遇到的问题
- 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题4---共享库中嵌套库带路径【已解决】
- arm qt移植过程中遇到的问题总结
- 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题1---cvNamedWindow调用报错的问题
- Windows7下移植Qt4.8.4项目到QT5.2上时遇到的一些问题(包括三篇参考文章)
- 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题1---cvNamedWindow调用报错的问题