创建具有本机依赖项的 NetCore NuGet 包
Create NetCore NuGet package with native dependency
我用C#为一个C++库做了一个NetCore包装器;这个库有专门的Windows、Linux和MacOS构建。我们为其添加了一个 C# 包装器,它也适用于所有这些操作系统。
从我在 MSDN 文档中读到的内容来看,可以添加多目标依赖项,但这适用于框架级别,而不是操作系统。所以在所有情况下都是NetCore,这是行不通的。
本机二进制文件非常大(大约 20 MB),因此使用所有本机二进制文件制作单个 NuGet 包会很麻烦......有什么建议吗?
我最终使用 Conan C++ 包管理器在构建 C# 层后引入了本机 .dll 或 .so。
要面向多个框架,只需在 .csproj 中使用 TargetFrameworks(复数)。这适用于VS和VSCode。
若要使用调用柯南的 MSBUild 目标创建 NuGet 包,我执行了以下步骤。
相关文章:
- 使用 NuGet 填充 Visual Studio 2019 中的 CMake 依赖项
- 使用jsoncpp-NuGet包时获取未解析的外部符号
- 可以从本机代码(如C++/Delphi)中使用.netCore DLL
- 在VS2019中包含nuget包C++跨平台程序
- 无法将 Google Test NuGet 包添加到 Visual Studio Linux C++ 项目中
- c++ nuget packages for opengl
- 本机 Nuget 包安装在 VS 中,但没有为C++(本机)项目添加引用
- 在解决方案中的项目中使用时缺少 NuGet 包
- MSBuild 用于在生成时将 nuget 包应用于项目
- 如何使用Nuget链接Visual Studio 2017中的ZMQ库
- 将库与NuGet包链接为Visual Studio中的依赖项
- 创建具有本机依赖项的 NetCore NuGet 包
- Visual Studio 找不到相对于解决方案的 NuGet 包
- NuGet 不引用已安装的包
- 创建具有汇编名称中特殊字符的Nuget软件包
- 使用Nuget软件包在C 项目中引用LIBSSH2会引发链接器错误
- 使用Nuget软件包添加与CUDA的OPENCV到Visual Studio程序
- 在2013年Visual Studio中与Nuget库有关
- 在C 中使用Nuget的libcurl(VS2013)
- Visual Studio 2015 Community -> cpprestsdk nuget 包