Open ppekrol opened 1 month ago
@brianrob We're now putting the native dependencies (like msdia) into build/native/amd64
, etc. Maybe runtimes/{rid}/native
(where rid
would be win-x64
, etc.) would be better place. That way it should not be selected for non-Windows publishes.
@cincuranet I think you are correct, our own package contains native libs and we are wrapping them up in 'runtimes'. Everything is working as expected then.
From my brief investigation it looks like those 3 directories do not even contain appropriate DLLs? The amd64 files are for windows-x64 and x86 one are for windows-x86? Nothing to do with linux there at all.
From my brief investigation it looks like those 3 directories do not even contain appropriate DLLs? The amd64 files are for windows-x64 and x86 one are for windows-x86? Nothing to do with linux there at all.
That's expected. These libraries are Windows-only.
I believe that this is fixed in a newer version of TraceEvent. Can you please try this with the latest version? I believe the change you need is https://github.com/microsoft/perfview/pull/1845.
I confirmed the same behavior with Microsoft.Diagnostics.Tracing.TraceEvent 3.1.10
Mea culpa. The amd64
folder is actually empty. 🤦♂️
With <PackageReference Include="Microsoft.Diagnostics.Tracing.TraceEvent" Version="3.1.10" />
and dotnet publish --configuration Release --runtime linux-x64 --self-contained true /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true
I'm getting
and the
amd64
has
OK, I re-tested what I tested :) and now I do have files in amd64
as well. Go figure. That means the runtimes
folder should be viable option.
I'll try to test it next week. Sounds good @brianrob?
Hi, my csproj to reproduce the issue is as simple as:
When I issue following command:
All works fine and I'm ending up with 1 exe, but when I switch to linux-x64 (haven't checked other non-windows platforms)
Then I'm ending up with
Can I do something with this on my side or this needs to be handled on yours? Can you advise?