gpt4 book ai didi

c++ - 用arm-linux-g++编译opencv失败(交叉编译)

转载 作者:太空宇宙 更新时间:2023-11-04 04:04:27 24 4
gpt4 key购买 nike

这是我第一次在 stackoverflow 上提问。我会尽可能明确地向您展示问题。

这个库在x86计算机上工作得很好,但是当涉及到交叉编译时(我把这个库安装在2个不同的目录中,所以它们都存在),它就是无法通过编译,说这样的话

"undefined reference to `cvNamedWindow'"

我知道这可能意味着我未能引用这些库,但在 x86 linux 上,只需键入

`pkg-config --libs opencv`

就可以了。啊,我尝试了很多方法,但都失败了!

目前我无法发布图像,但我会向您展示库文件。

libopencv_calib3d.so
libopencv_contrib.so
libopencv_core.so
libopencv_features2d.so
libopencv_flann.so
libopencv_gpu.so
libopencv_highgui.so
libopencv_imgproc.so
libopencv_legacy.so
libopencv_ml.so
libopencv_nonfree.so
libopencv_objdetect.so
libopencv_photo.so
libopencv_stitching.so
libopencv_superres.so
libopencv_ts.so
libopencv_video.so
libopencv_videostab.so

如何引用库啊?我尝试了很多流行的谷歌结果,但都失败了,所以我需要你的帮助,非常感谢你!

最佳答案

在 Makefile 中(我认为这是 pkg-config --libs opencv 所在的位置),将 `pkg-config --libs opencv` 替换为

-L<directory where the ARM .so files are> -lopencv_calib3d -lopencv_contrib ...

您可能需要更改 -l 选项的顺序,具体取决于哪个库引用其他库。引用另一个库中的符号的库应该在命令行上位于它的前面,因为库是按顺序搜索的。

关于c++ - 用arm-linux-g++编译opencv失败(交叉编译),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21798345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com