You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am building a Nuget package that distributes native libraries for multiple platforms, one of them being MacOS. The libraries are compiled as a universal binary, meaning they support x64 and arm64 simultaneously. How do I best represent this platform using runtime identifiers in Nuget and with dotnet pack? My best guess is to package as /runtimes/osx/native/mylib.dylib, using "osx" without an architecture specifier, since by definition the universal binary should run on all architectures.
If this is true, I would appreciate a specific comment to clarify this in the documentation. Perhaps under "macOS RIDs" could be:
osx-x64 (Minimum OS version is macOS 10.12 Sierra)
osx-arm64
osx (For universal binaries supporting both x64 and arm64)
I have seen one package in the wild (Vosk) which includes a native binary under an "osx-universal" folder, but this seems to be proprietary and not linked to an actual runtime identifier, since osx-universal is not in the RID catalog.
Target framework
.NET Core 8.0
The text was updated successfully, but these errors were encountered:
I suppose this documentation page is kind of the wrong area as well, since I'm looking for guidance specifically on Nuget packaging. However, the most relevant Nuget doc on which paths to use for packaging all refer to runtime identifiers, which in turn leads to the page in question.
Issue description
This is regarding the documentation page for Runtime Identifiers.
I am building a Nuget package that distributes native libraries for multiple platforms, one of them being MacOS. The libraries are compiled as a universal binary, meaning they support x64 and arm64 simultaneously. How do I best represent this platform using runtime identifiers in Nuget and with
dotnet pack
? My best guess is to package as/runtimes/osx/native/mylib.dylib
, using "osx" without an architecture specifier, since by definition the universal binary should run on all architectures.If this is true, I would appreciate a specific comment to clarify this in the documentation. Perhaps under "macOS RIDs" could be:
osx-x64
(Minimum OS version is macOS 10.12 Sierra)osx-arm64
osx
(For universal binaries supporting both x64 and arm64)I have seen one package in the wild (Vosk) which includes a native binary under an "osx-universal" folder, but this seems to be proprietary and not linked to an actual runtime identifier, since
osx-universal
is not in the RID catalog.Target framework
The text was updated successfully, but these errors were encountered: