- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在将 32 位项目转换为 x64。在大多数情况下,它只是意味着将 64
附加到库路径(并最终为 x64 构建这些库)。现在我假设所有库都已准备就绪,并且代码也与 x64
兼容。但是我不断收到 boost zlib 库的错误,如下所示:
error LNK2019: unresolved external symbol inflateEnd
error LNK2019: unresolved external symbol inflate
error LNK2019: unresolved external symbol inflateInit_
error LNK2019: unresolved external symbol deflateEnd
error LNK2019: unresolved external symbol deflate
error LNK2001: unresolved external symbol "int const boost::iostreams::zlib::default_compression"
error LNK2001: unresolved external symbol "int const boost::iostreams::zlib::deflated"
error LNK2001: unresolved external symbol "int const boost::iostreams::zlib::default_strategy"
我为链接器启用了详细模式(在 MS Visual Studio 中,您通过将 /VERBOSE:LIB
添加到其他链接器选项来实现此目的)。多亏了它,我可以看到这个输出行:
Searching .\..\..\libs\boost145\stage\lib64\libboost_zlib-vc100-mt-gd-1_45.lib
这意味着该库位于 boost145\stage\lib64
中。那么我现在应该寻找什么?
一个奇怪的事情是,定义第一组缺失符号的文件(那些不在boost
中的)在项目中有头文件,zlib.h
和zconf.h
。也许这是一些提示? zlib.h
将外部符号定义为:
ZEXTERN int ZEXPORT inflateEnd OF((z_streamp strm));
明显的问题是:这个头文件的 lib 文件到底在哪里?
最佳答案
我遇到了同样的问题,为了解决我从 zlib 下载源代码并在本地构建 x64 dll/lib 的错误。下载的解决方案文件存在一些问题,修复方法如下所述。
Zlib 1.2.8 源代码:http://zlib.net/zlib128.zip
VS2012 的解决方案文件位于:zlib-1.2.8\contrib\vstudio\vc11\zlibvc.sln
修复:
改变: <Command>cd ..\..\..\contrib\masmx64
bld_ml64.bat</Command>
到: <Command>cd ..\..\contrib\masmx64
bld_ml64.bat</Command>
在 zlibvc 项目属性 -> 链接器 -> 高级 -> 图像具有安全异常处理程序 -> 设置为否 (/SAFESEH:NO)。关于SAFESEH的信息:Compiling libffi with VS2012 fails with fatal error LNK1281: Unable to generate SAFESEH image
关于c++ - 使用 boost Zlib 时未解析的外部符号 inflateEnd(和其他),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32692593/
本文整理了Java中com.jcraft.jzlib.ZStream.inflateEnd()方法的一些代码示例,展示了ZStream.inflateEnd()的具体用法。这些代码示例主要来源于Git
我正在将 32 位项目转换为 x64。在大多数情况下,它只是意味着将 64 附加到库路径(并最终为 x64 构建这些库)。现在我假设所有库都已准备就绪,并且代码也与 x64 兼容。但是我不断收到 bo
我是一名优秀的程序员,十分优秀!