为 Boost 创建 Nuget 包
Create Nuget package for Boost
我想为我的 boost 库创建一个 nuget 包。目前 boost 文件夹包含 boost、lib、pathces 和 readme.txt 文件等子文件夹。
我应该如何从它创建一个 nuget 包,我应该将所有这些子文件夹都放入内容文件夹吗?
有什么指点吗?
要为本机 C++ 库创建 NuGet 包,您应该将这些文件添加到 NuGet 包中:
- 'build/native/{LIBRARY_NAME}.targets'
- 'lib/native/include/{LIBRARY_HEADER_FILES}'
- 'lib/native/{LIBRARY_LIB/DLL_FILES}'
{LIBRARY_NAME}.targets 应该指定头文件和 lib 文件的所需路径。例如,
<?xml version="1.0" encoding="utf-8"?>
<Project ToolVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(MSBuildThisFileDirectory)..\..\lib\native\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
<Link>
<AdditionalLibraryDirectories>$(MSBuildThisFileDirectory)..\..\lib\native\address-model-32\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
<Link>
<AdditionalLibraryDirectories>$(MSBuildThisFileDirectory)..\..\lib\native\address-model-64\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>
同时,为使用该项目的所有官方 Boost 库生成并发布了 Boost NuGet 包https://github.com/sergey-shandar/getboost。
我想为我的 boost 库创建一个 nuget 包。目前 boost 文件夹包含 boost、lib、pathces 和 readme.txt 文件等子文件夹。
我应该如何从它创建一个 nuget 包,我应该将所有这些子文件夹都放入内容文件夹吗?
有什么指点吗?
要为本机 C++ 库创建 NuGet 包,您应该将这些文件添加到 NuGet 包中:
- 'build/native/{LIBRARY_NAME}.targets'
- 'lib/native/include/{LIBRARY_HEADER_FILES}'
- 'lib/native/{LIBRARY_LIB/DLL_FILES}'
{LIBRARY_NAME}.targets 应该指定头文件和 lib 文件的所需路径。例如,
<?xml version="1.0" encoding="utf-8"?>
<Project ToolVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(MSBuildThisFileDirectory)..\..\lib\native\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
<Link>
<AdditionalLibraryDirectories>$(MSBuildThisFileDirectory)..\..\lib\native\address-model-32\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
<Link>
<AdditionalLibraryDirectories>$(MSBuildThisFileDirectory)..\..\lib\native\address-model-64\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>
同时,为使用该项目的所有官方 Boost 库生成并发布了 Boost NuGet 包https://github.com/sergey-shandar/getboost。