UNeedCryDear / yolov8-opencv-onnxruntime-cpp

yolov8 hub,cpp with onnxruntime and opencv
Apache License 2.0
281 stars 53 forks source link

error C2039: "className": 不是 "Yolov8" 的成员 #20

Closed tianlongyang-bot closed 9 months ago

tianlongyang-bot commented 10 months ago

下载项目,cmake成功,点开.sln,配置环境后(onnxruntime,opencv),点击生成出现1成功1失败image

yolov8-opencv-onnxruntime-cpp-main\main.cpp(38,29): error C2039: "className": 不是 "Yolov8" 的成员,如图39行说_className不是类成员 image 查看 .h文件发现 Yolov8类有定义 std::vector _className = {"ropos"}; image

请问是什么原因呢,怎么解决该bug,谢谢!

UNeedCryDear commented 10 months ago

image

这里改为CR LF

tianlongyang-bot commented 10 months ago

谢谢你,上面的问题解决了,不幸的是又出现了新问题,2>yolov8_onnx.obj : error LNK2019: 无法解析的外部符号 OrtSessionOptionsAppendExecutionProvider_CUDA,函数 "public: bool __cdecl Yolov8Onnx::ReadModel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,bool,int,bool)" (?ReadModel@Yolov8Onnx@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_NH1@Z) 中引用了该符号

image

我使用的是cpu版本的1.15.1onnxruntime ,请问这个问题怎么解决呢?

UNeedCryDear commented 10 months ago

我用的也是这个版本没问题。 你要将所有的换行符都改为CR LF啊,不要跟我说你就改了几个,剩下的没有改

tianlongyang-bot commented 10 months ago

大佬全都改成CRLF了,但是生成,出现了新问题,感觉是CmakeLists.txt 没有配置正确?新问题就是error LNK2019: 无法解析的外部符号 OrtSessionOptionsAppendExecutionProvider_CUDA

image

这个CmakeLists.txt我也有点疑惑,为什么win64 没有TARGET_LINK_LIBRARIES 去链接 lib,然后路径也有点问题,我就新加了一个 我的环境是win64,debug ,vs2022,cpu版本

UNeedCryDear commented 10 months ago

如果你下载的是cpu版本的onnxruntime,直接将这句话注释掉

tianlongyang-bot commented 10 months ago

谢谢完全跑通,你回消息的速度比我女朋友微信都快,如果再也不能相见,祝你早安,午安,晚安,阿门!