我正在尝试用 Go 编程语言编写一个程序,该程序使用 OpenVINO DNN 模型来执行推理。为了做到这一点,我遵循了这个 GITHUB 链接的说明:https ://github.com/hybridgroup/gocv/tree/master/openvino
我已经安装了 OpenVINO 和与之配套的 3rd 方库,其中包括位于~/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
在我的系统上确实存在。