尝试交叉编译opencv时出错

时间:2012-04-12 10:06:36

标签: opencv arm codeblocks

我正在尝试使用opencv函数交叉编译一个非常简单的测试程序。

我正在使用Ubuntu 11.10和Codeblocks,当我编译我的代码时,它出现在我身上:

||warning: ../../lib/libopencv_core.so, needed by /root/arm-lib/lib/libopencv_highgui.so, not found (try using -rpath or -rpath-link)|
||warning: ../../lib/libopencv_imgproc.so, needed by /root/arm-lib/lib/libopencv_highgui.so, not found (try using -rpath or -rpath-link)|
||=== Build finished: 0 errors, 2 warnings ===|

当我尝试在ARM中执行此软件时,我遇到了分段错误(核心转储)。

我在Codeblocks上使用的标志是:

-L / USR /本地/ lib中 -L / LIB / libbxml2.so.2 -lpthread -lrt -lxml2 -lz -lopencv_highgui -lopencv_core -lopencv_imgproc

你有什么建议?提前致谢

1 个答案:

答案 0 :(得分:0)

命令行的一个明显问题是:-L必须仅用于添加库目录,但是,您使用它来在-L/lib/libbxml2.so.2中包含文件,这是错误的。

很可能你想这样做:

-L/usr/local/lib -L/lib -lxml2 -lpthread -lrt -lxml2 -lz -lopencv_highgui -lopencv_core -lopencv_imgproc

现在,错误很明显:系统在-L附带的路径中找不到libopencv_core.so和libopencv_imgproc.so。我建议您找到这些文件,然后使用-L标志添加相应的目录。