c++ - C onnx header 找不到 OrtEnv 定义

标签 c++ c dll header onnx

我正在尝试包装 ONNX header 以在另一种语言中使用。需要明确的是,它使用 C dll 并需要 C header ,但我在使用 C header 进行编译时遇到问题,因为 ONNX header 似乎缺少当前 ONNX 示例中使用的 OrtEnv 结构的定义。

https://github.com/microsoft/onnxruntime/blob/master/include/onnxruntime/core/session/onnxruntime_c_api.h

这是我尝试用来包装的 ONNX api header 。

以及示例

https://github.com/microsoft/onnxruntime/blob/master/csharp/test/Microsoft.ML.OnnxRuntime.EndToEndTests.Capi/C_Api_Sample.cpp

在第 30 行,它声明了一个指向结构的原始指针,我无法在 api header 中找到该结构的定义,除非我不明白某些内容。

有人可以详细说明我做错了什么吗?我只能看到返回 OrtEnv 的方法声明,但看不到类型声明。

这里有一个完整的动态包,带有标题:

https://github.com/microsoft/onnxruntime/releases/download/v1.4.0/onnxruntime-win-x64-gpu-1.4.0.zip

将 dll 链接到您的应用程序应该很简单,并包含我遇到问题的上述 header 。

最佳答案

如果标题不包含定义,则意味着作者不想将其提供给您。发生这种情况的原因有多种,其中之一是您不应该篡改内容。

关于c++ - C onnx header 找不到 OrtEnv 定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63869650/

相关文章:

C 在函数定义中使用前向声明

powershell - 如何从 DLL 导入 Cmdlet

c++ - 如何在调试和重新分发期间包含 DLL?

c++ - 未捕获 WM_PAINT 中的访问冲突

c++ - 触发了一个断点(析构函数),类模板类型是它自己的一个版本?

c++ - c++使用Eclipse的include方式

c - 在连接到服务器之前尝试编译客户端时出错

c++ - "Garbled"在 VST 插件中使用 FFTW 的声音

java - JNA 和结构体中的 boolean 数组

c# - 由于编码问题,在 iOS 上从 C# 调用 DLL 库时出现问题