环境:ubuntu10.04 + s3c6410
交叉编译工具链:光盘自带的arm-linux-4.4.1
opencv动态库已经交叉编译好(上一篇),复制到开发板 /lib/下
1,vim打开src/下的CMakeLists.txt,增加:
set(CMAKE_SYSTEM_NAME linux)set(CMAKE_C_COMPILER "/usr/local/arm/4.4.1/bin/arm-linux-gcc")
set(CMAKE_CXX_COMPILER "/usr/local/arm/4.4.1/bin/arm-linux-g++")
设置c,c++使用的编译器。
编译源码,报错:
/usr/local/opencv-arm/lib/libopencv_core.so: undefined reference to `pthread_key_create'
/usr/local/opencv-arm/lib/libopencv_core.so: undefined reference to `pthread_getspecific'
/usr/local/opencv-arm/lib/libopencv_core.so: undefined reference to `clock_gettime'
/usr/local/opencv-arm/lib/libopencv_core.so: undefined reference to `pthread_setspecific'
为解决这个问题,在CMakeLists.txt增加:
set(CMAKE_EXE_LINKER_FLAGS "-lpthread -lrt")
这样,就可以在make的时候添加编译选项,链接相应的动态库。
然后按着README中的:

本文介绍了将TLD算法移植到基于ARM的6410开发板的过程,包括使用交叉编译工具链arm-linux-4.4.1,修改CMakeLists.txt以链接交叉编译的OpenCV动态库,并成功编译生成执行文件run_tld。然而,算法运行时未能打开摄像头设备,出现'capture device failed to open!'的错误,作者计划后续解决此问题。
最低0.47元/天 解锁文章
 (一)&spm=1001.2101.3001.5002&articleId=7266634&d=1&t=3&u=7272b00bcba44110af0917812cce2e0f)
5043

被折叠的 条评论
为什么被折叠?



