如何使用zlib支持构建增强功能?

bob*_*eff 6 c++ boost zlib boost-iostreams

我正在尝试使用zlib支持在Windows上构建Boost C++库版本1.65.1.我正在使用Conan包中的zlib库和我之前构建的zlib.我正在尝试了解使用zlib支持构建boost的正确步骤,以使用它们来创建Conan配方以进行提升.我试图按照官方增强文档中的说明进行操作.我设置环境变量ZLIB_LIBRARY_PATH,ZLIB_NAME以及ZLIB_INCLUDE通过以下方式:

set ZLIB_LIBRARY_PATH=C:\Users\ivan.bobev\.conan\data\zlib\1.2.11\igsoft\stable\package\63da998e3642b50bee33f4449826b2d623661505\lib
set ZLIB_NAME=zlibstat
set ZLIB_INCLUDE=C:\Users\ivan.bobev\.conan\data\zlib\1.2.11\igsoft\stable\package\63da998e3642b50bee33f4449826b2d623661505\include
Run Code Online (Sandbox Code Playgroud)

并且构建命令是:

.\b2.exe -j8 --prefix="C:\work\test_builds\boost\install\x64_shared_release" --build-dir="C:\work\test_builds\boost\build\x64_shared_release" --layout=system architecture=x86 address-model=64 toolset=msvc variant=release debug-symbols=on link=shared threading=multi runtime-link=shared install
Run Code Online (Sandbox Code Playgroud)

结果是:

 - zlib                     : no  (cached)
Run Code Online (Sandbox Code Playgroud)

我还尝试在运行之间清除boost build cash.

在此之后,我尝试直接从b2build命令设置环境变量:

.\b2.exe -j8 -sZLIB_LIBRARY_PATH="C:\Users\ivan.bobev\.conan\data\zlib\1.2.11\igsoft\stable\package\63da998e3642b50bee33f4449826b2d623661505\lib"-sZLIB_NAME="zlibstat" -sZLIB_INCLUDE="C:\Users\ivan.bobev\.conan\data\zlib\1.2.11\igsoft\stable\package\63da998e3642b50bee33f4449826b2d623661505\include" --prefix="C:\work\test_builds\boost\install\x64_shared_release" --build-dir="C:\work\test_builds\boost\build\x64_shared_release" --layout=system architecture=x86 address-model=64 toolset=msvc variant=release debug-symbols=on link=shared threading=multi runtime-link=shared install
Run Code Online (Sandbox Code Playgroud)

结果是一样的.

最后,我尝试通过project-config.jam以下方式将选项添加到文件中:

using zlib : 1.2.11 : <search>C:\Users\ivan.bobev\.conan\data\zlib\1.2.11\igsoft\stable\package\63da998e3642b50bee33f4449826b2d623661505\lib <name>zlibstat <include>C:\Users\ivan.bobev\.conan\data\zlib\1.2.11\igsoft\stable\package\63da998e3642b50bee33f4449826b2d623661505\include ;
Run Code Online (Sandbox Code Playgroud)

我再一次没有成功.

在zlib include文件夹中有子文件夹zlib.我还尝试了上面的3个变体,将路径设置为"../include/zlib".再没有成功.

如何使用zlib预先构建的Conan包使用zlib支持构建Boost?

las*_*ote 3

project-config.jam补丁没问题,实际上可以在 Linux 和 OSX 中运行。在 Windows 中,您需要将“\”字符(jam 语言中的转义字符)替换为“/”。

您可以在此处查看我更新的 Boost 1.64.0 柯南配方