2013-02-15 98 views
2

我正在使用vs2012运行所有构建,但通过python构建脚本运行。我正在尝试构建Boost 1.52,并且需要静态链接到zlib。我有一个zlib版本,默认情况下,它创建了静态库zlib.lib和dll zlib1.dll以及关联的zdll.lib。然后,我使用开关构建boost库:使用zlib构建Boost 1.52作为静态库

-sZLIB_BINARY=zlib -sZLIB_INCLUDE=%s -sZLIB_LIBPATH=%s 

其中%s被相应的文件夹替换。我相信这应该会导致链接到静态zlib.lib文件。我有一个使用所有这些的应用程序。我链接到zlib.lib并运行最终的exe的依赖关系者,并获得zlib1.dll。我对zlib没有其他依赖关系,所以这是唯一可以来自这个地方的地方。我在http://www.boost.org/doc/libs/1_43_0/libs/iostreams/doc/installation.html人还加入我看过,虽然安装文档开关

-sNO_ZLIB=0 

,并不能找到任何东西,我很想念。

预先感谢您...

+0

我已经通过以下方式解决了这个... 虽然寻找其他链接我发现,在升压有一个 的#pragma评论(zlib的,BOOST_ZLIB_BINARY) 并且这个标志是在devenv的预处理程序设置中设置为我的最终项目zdll.lib。我调整了这zlib.lib,一切正常工作。 – MichaelB 2013-02-18 18:22:27

回答

0

我已经通过以下方式解决了这个......虽然寻找其他链接我发现,在升压有一个

# pragma comment(lib, BOOST_STRINGIZE(BOOST_ZLIB_BINARY)) 

并且这个标志BOOST_ZLIB_BINARY在devenv的预处理器设置中为我的最终项目设置为zdll.lib。我调整了这zlib.lib,一切正常工作。