创建具有本机依赖项的 NetCore NuGet 包
Create NetCore NuGet package with native dependency
我用 C# 为 C++ 库制作了一个 NetCore 包装器;这个库有针对 Windows、Linux 和 MacOS 的专门构建。我们为它添加了一个 C# 包装器,它也适用于所有这些 OSes.
根据我在 MSDN docs 中阅读的内容,可以添加多目标依赖项,但这在框架级别有效,而不是 OS。所以在所有情况下都是 NetCore,这是行不通的。
本机二进制文件非常大(大约 20 MB),因此将所有本机二进制文件制作一个 NuGet 包会很麻烦...有什么建议吗?
在构建 C# 层后,我最终使用 Conan C++ package manager 引入本机 .dll 或 .so。
要定位多个框架,只需在 .csproj 中使用 TargetFrameworks(复数)。这适用于 VS 和 VSCode.
要使用调用 Conan 的 MSBUild 目标创建 NuGet 包,我遵循了 these steps。
我用 C# 为 C++ 库制作了一个 NetCore 包装器;这个库有针对 Windows、Linux 和 MacOS 的专门构建。我们为它添加了一个 C# 包装器,它也适用于所有这些 OSes.
根据我在 MSDN docs 中阅读的内容,可以添加多目标依赖项,但这在框架级别有效,而不是 OS。所以在所有情况下都是 NetCore,这是行不通的。
本机二进制文件非常大(大约 20 MB),因此将所有本机二进制文件制作一个 NuGet 包会很麻烦...有什么建议吗?
在构建 C# 层后,我最终使用 Conan C++ package manager 引入本机 .dll 或 .so。
要定位多个框架,只需在 .csproj 中使用 TargetFrameworks(复数)。这适用于 VS 和 VSCode.
要使用调用 Conan 的 MSBUild 目标创建 NuGet 包,我遵循了 these steps。