我正在尝试交叉编译执行此操作的OpenCV 2.4.3的示例:
arm-linux-gnueabi-g++ main.cpp -o test1 `pkg-config opencv --libs` `pkg-config opencv --cflags`.
它返回以下错误:
/usr/local/lib/libopencv_calib3d.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
我已经使用yocto项目在图像上为ARM编译了OpenCV库。
感谢任何形式的帮助。
答案 0 :(得分:0)
显然您认为平台使用的二进制文件不正确。似乎您的编译器适用于ARM,但libopencv_calib3d.so
是x86二进制文件。
使用
进行检查$ file /usr/local/lib/libopencv_calib3d.so
只需指向交叉编译的ARM二进制文件。