将Quazip编译成基于32位release版的库时报错的解决方案
创始人
2024-05-31 21:09:56
0

开发环境:Win10 + Qt5.9.9
注意:阅读本篇文章前,首先阅读Quazip的编译及使用,保姆级教程。
之前写了如何编译Quazip的库,当时是使用MSV2015-64-release来编译的,
具体编译流程可参考之前的文章Quazip的编译及使用,保姆级教程。

因为需求问题,现在要编译基于MSVC2015-32-release的Quazip库(也就是32位release的库)。
但是发现编译32位Quazip时一直报错,导致无法编译成功。
编译Quazip前,首先要编译zlib,首先我编译好了32位的zlib库了,这很简单,如下图所示。

在这里插入图片描述
接下来,按照之前编译64位时的步骤来编译Quazip库,此时便报了错,如下图所示。
在这里插入图片描述
之后企图用VS进行编译,后来一番倒腾,最终以失败告终。然后阅读了一篇文章,
函数调用约定,
再后来就解决了。

解决方案1

1. 编译zlib时,将zlibvc项目中的 ZLIB_WINAPT宏给去掉。然后重新编译生成32位的zlib相关库,如下图所示。
在这里插入图片描述
2. 最后将新生成的zlib库替换之前的,然后重新编译Quazip,如下图所示。
在这里插入图片描述
3. 此时编译Quazip,可看见Quazip的库已经生成了,如下图所示。
在这里插入图片描述

解决方案2

此方案是@福建兄弟萧海所提供,谢谢老弟@萧海的艰辛付出。
在编译zlibvc模块时首先修改zconf.h中的源码,将第347行 ~ 359行(ZLIB_WINAPI进行注释即可)。
在这里插入图片描述
此时重新编译生成zlibwapi.lib和zlibwapi.dll,接下来按流程炮制即可,发现quazip.lib和quazip.dll已经生成了,如下图所示。
在这里插入图片描述

相关内容

热门资讯

发扬抓落实的光荣传统和优良作风 转自:人民论坛作者:南京航空航天大学马克思主义学院教授、博导 侍 旭抓落实是我们党的光荣传统和优良作...
“为一场演出赴一座城” 演唱会... 来源:北京日报北京日报记者 韩轩“你总是心太软”“我等的船还不来,我等的人还不明白”,7月4日晚,任...
四川丹巴山洪泥石流转移安置群众... 来源:新华网新华社记者 李力可记者5日晚从四川省甘孜藏族自治州丹巴县地质灾害防治指挥部了解到,7月4...
创纪录!美股散户高度活跃:上半... 财联社7月6日讯(编辑 卞纯)尽管今年上半年美股面临一系列挑战,包括关税不确定性、市场大幅波动以及中...
适合农村的小型加工厂(开小型食... 久而久之,三月,大地春暖花开,万物开始生长,农民在新的一年开始劳作。随着各地恢复工作,一些农民工已经...
广东印发《指导意见》 小产权房... 格隆汇7月6日|广东省自然资源厅近日印发《关于加快解决国有建设用地上不动产登记若干历史遗留问题的指导...
北约秘书长吕特接受采访提“中俄... 【环球网报道 记者 赵建东】据《纽约时报》、俄罗斯《消息报》报道,俄罗斯安全会议副主席梅德韦杰夫7月...
中国足协:303名自荐球员进入... 中国足协网站“中国足协球员自荐系统” 自2025年 3 月 1 日正式上线以来受到社会各界广泛关注。...
书香四溢 阅读同行   本报讯(记者吴潇)7月5日,“书启新章 阅见未来”2025中国—东盟图书文化周阅读推广大使受聘仪...
【图片新闻】西和县23.89万... 图片新闻  6月30日,小麦机收减损“大比武”在西和县苏合镇张河村进行。目前,全县23.89万亩小麦...