新闻中心

EEPW首页>嵌入式系统>设计应用> OpenCV在ARM上的移植 错误总结

OpenCV在ARM上的移植 错误总结

作者: 时间:2016-11-11 来源:网络 收藏
下面列举自己遇到问题及解决办法
1. zlib libpngjpeg 安装成功后还是出错,显示缺失zlib libpngjpeg
此时可能没有勾选with_zlib with_libpng with_jpeg。勾选后再configure 就不会出错了
2. “CMAKE_EXE_LINKER_FLAGS原来为空,加上-lpthread -lrt” 不好使的话
可以试试:CMAKE_EXE_LINKER_FLAGS原来为空,加上-lpthread -lrt -ldl
3. 生成文件(bin include lib share)结束后,把原来Ubuntu 下用cmake编译opencv生成的文件覆盖(合并?)
所以执行原来可以正常运行的命令 :g++ ADA_LKDEMO.cpp -oADA_LKDEMO`pkg-config --cflags --libs opencv` -ldl
会出现如下错误:
/usr/local/lib/libopencv_calib3d.so: error adding symbols: 文件格式错误
collect2: error: ld returned 1 exit status
原因是libopencv_calib3d.so不再是Linux下配置的opencv文件 而是 arm环境下的了(原来的Linux文件被覆盖了)
执行:arm-linux-g++ ADA_LKDEMO.cpp -oADA_LKDEMO`pkg-config --cflags --libs opencv` -ldl
就可以编译成功了!
使用arm-linux-g++新问题又出现:
ADA_LKDEMO.cpp:30:19: error: X11/X.h: No such file or directory
ADA_LKDEMO.cpp:31:22: error: X11/Xlib.h: No such file or directory
ADA_LKDEMO.cpp:32:23: error: X11/Xutil.h: No such file or directory
可能是X11/X.h X11/Xlib.h X11/Xutil.h 不能运行在arm平台上?(即只有在g++命令下才不出错) 那么怎么 移植到arm下呢?(即可以让arm-linux-g++编译通过???)
4. 错误:
bash: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/zbl/cmake/cmake-3.0.0/bin: 没有那个文件或目录
bash: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/FriendlyARM/toolschain/4.4.3/bin: 没有那个文件或目录
将路径配置 指令写错了。(用vi ~/.bashrc配置)
错误: PATH=$PATH:/opt/FriendlyARM/toolschain/4.4.3/bin
正确: export PATH=$PATH:/opt/FriendlyARM/toolschain/4.4.3/bin
5.登录管理员账户时,输入密码后,一直在登录界面循环

ctrl+alt+f1 ,切换到tty1,输入管理员帐号和密码

本文引用地址: //m.amcfsurvey.com/article/201611/316986.htm

sudo rm -r .Xauthority*

sudo reboot //重启

ok

参考:http://blog.csdn.net/wjeson/article/details/9029995
6.undefined reference to symbol XFlush
/usr/lib/i386-linux-gnu/libX11.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make: *** [freepen_drv] 错误 1
参考http://blog.csdn.net/sukhoi27smk/article/details/18982261
7.pkg-config的用法
参考http://blog.csdn.net/embeddedman/article/details/7294006


评论


技术专区

关闭