microsoft / onnxruntime

ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator
https://onnxruntime.ai
MIT License
13.66k stars 2.78k forks source link

Does Microsoft.ML.OnnxRuntime have a dependency on System.CodeDom.dll ? #13604

Open kkulkarniMS opened 1 year ago

kkulkarniMS commented 1 year ago

I am using the Microsoft.ML.OnnxRuntime nuget package in my code and I see no errors while building on my local machine. However, my cloudbuild is failing with these errors - D:\dbs\sh\qbits\yAg7NkvbpxDsdZYx3dA_DA\17.3\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets(4809,5): error MSB3021: Unable to copy file "D:\dbs\Cx\sn\system.codedom\6.0.0\lib\net6.0\System.CodeDom.dll" to "D:\dbs\el\sn\target\distrib\retail\amd64\app\Serp\bin\System.CodeDom.dll". Access to the path 'D:\dbs\el\sn\target\distrib\retail\amd64\app\Serp\bin\System.CodeDom.dll' is denied. [D:\dbs\el\sn\private\frontend\Serp\Host\Serp.csproj]

I came across a post that said that nuget package may have a reference for something but it may not be included in the nuspec file hence it doesn't show up in the nuget? I am stuck because of this issue. Any help will be appreciated ASAP

yuslepukhin commented 1 year ago

I searched it in my favorite search engine, and it does not seem to be something one uses in their code. Looks like reflection/compilation thing. I am seeing that this instruction to copy this file comes from MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets.

Could it contain some useful information?

adrianlizarraga commented 1 year ago

I'll add a bit more information:

After a bit of digging, I found that the Microsoft.ML.OnnxRuntime.PerfTool uses System.CodeDom, which should get shipped along with every release of .NET.

However, the error seems to indicate that insufficient permissions to write to the destination are causing the build failure.