1.编译环境设置
1、交叉编译工具为:arm-linux-gnueabihf
2、安装cmake
3、根据编译过程中的提示的库依赖进行apt-get install libxxx-dev
2.编译期错误
在编译opencv3.1.0时添加opencv_calib3d时报错:
/tmp/ccJsa4Jx.s: Assembler messages:
/tmp/ccJsa4Jx.s:17415: Error: offset out of range
modules/calib3d/CMakeFiles/opencv_calib3d.dir/build.make:550: recipe for target 'modules/calib3d/CMakeFiles/opencv_calib3d.dir/src/five-point.cpp.obj' failed
make[2]: *** [modules/calib3d/CMakeFiles/opencv_calib3d.dir/src/five-point.cpp.obj] Error 1
/tmp/ccJsa4Jx.s:17415: Error: offset out of range
modules/calib3d/CMakeFiles/opencv_calib3d.dir/build.make:550: recipe for target 'modules/calib3d/CMakeFiles/opencv_calib3d.dir/src/five-point.cpp.obj' failed
make[2]: *** [modules/calib3d/CMakeFiles/opencv_calib3d.dir/src/five-point.cpp.obj] Error 1
发现通过将modules/calib3d/CMakeFiles/opencv_calib3d.dir/flags.make中将O3更改为O1后即可编译通过。
在编译DBoW2时报错:
/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.7.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lopencv_videoio
该错误的原因在于交叉编译工具没有找到该库文件&#