OpenCV在ARM上的移植 错误总结
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,输入管理员帐号和密码
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 linecollect2: 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
OpenCVARM移植错误总 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)