运行 使用 OpenVINO 和 OpenCV 的 Go 程序 - /usr/bin/ld: 找不到 -lXXX

Running Go Program which uses OpenVINO & OpenCV - /usr/bin/ld: cannot find -lXXX

我正在尝试用 Go 编程语言编写一个程序,该程序使用 OpenVINO DNN 模型来执行推理。为此,我遵循了 GITHUB link 中的说明:https://github.com/hybridgroup/gocv/tree/master/openvino

我已经安装了 OpenVINO 和它附带的第 3 方库,其中包括位于 ~/intel/openvino_{version}/opencv 目录中的 OpenCV。

每当我尝试执行以下命令时:

go run -tags openvino ./cmd/version/main.go

我得到这个输出:

 runtime/cgo
/usr/bin/ld: cannot find -lHeteroPlugin
/usr/bin/ld: cannot find -lMKLDNNPlugin
/usr/bin/ld: cannot find -lmyriadPlugin
/usr/bin/ld: cannot find -linference_engine
/usr/bin/ld: cannot find -lclDNNPlugin
/usr/bin/ld: cannot find -lopencv_pvl
collect2: error: ld returned 1 exit status

所以我尝试这样设置 CGO_LDFLAGS

CGO_LDFLAGS=-L/opencv/lib -L/deployment_tools/inference_engine/lib/intel64 -lpthread -ldl -ldliaPlugin -lHeteroPlugin -lMKLDNNPlugin -lmyriadPlugin -linference_engine -lclDNNPlugin -lopencv_core -lopencv_pvl -lopencv_videoio -lopencv_imgproc -lopencv_highgui -lopencv_imgcodecs -lopencv_objdetect -lopencv_features2d -lopencv_video -lopencv_dnn -lopencv_calib3d

但是当我这样做时,我得到:

bash: -L/deployment_tools/inference_engine/lib/intel64: No such file or directory

尽管 ~/intel/openvino/deployment_tools/inference_engine/lib/intel64 确实存在于我的系统中。

已更新(Feb/25/2020)

从2019 R3.334开始,OpenVINO SDK再次开始支持GoCV。




旧消息

看看这个:

https://github.com/hybridgroup/gocv/issues/491

最新版本的openvino放弃了对pvl的支持,因此没有libpvl之类的。

您可以尝试一个旧版本,但没有未来。