创建具有本机依赖项的 NetCore NuGet 包

Create NetCore NuGet package with native dependency

本文关键字:NetCore NuGet 依赖 本机 创建      更新时间:2023-10-16

我用C#为一个C++库做了一个NetCore包装器;这个库有专门的Windows、Linux和MacOS构建。我们为其添加了一个 C# 包装器,它也适用于所有这些操作系统。

从我在 MSDN 文档中读到的内容来看,可以添加多目标依赖项,但这适用于框架级别,而不是操作系统。所以在所有情况下都是NetCore,这是行不通的。

本机二进制文件

非常大(大约 20 MB),因此使用所有本机二进制文件制作单个 NuGet 包会很麻烦......有什么建议吗?

我最终使用 Conan C++ 包管理器在构建 C# 层后引入了本机 .dll 或 .so。

要面向多个框架,只需在 .csproj 中使用 TargetFrameworks(复数)。这适用于VS和VSCode。

若要使用调用柯南的 MSBUild 目标创建 NuGet 包,我执行了以下步骤。