首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建32位zlib libz.a

构建32位zlib libz.a
EN

Stack Overflow用户
提问于 2011-06-29 20:21:21
回答 3查看 5.3K关注 0票数 6

我正在尝试编译我用zlib编写的程序的32位版本(MinGW)。到目前为止,我从来没有编译过32位,所以我从源代码(libz.a)编译的zlib版本是64位的。我尝试重新运行zlib-1.2.5目录中的makefile,但它只编译了64位版本的libz.a。

我似乎找不到构建32位的选择。

有人知道怎么做吗?

谢谢!

Jeffrey Kevin Pry

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-06 02:01:54

事实证明,我必须获得32位版本的MinGW,并用它进行编译。我用的是MinGW64。

票数 1
EN

Stack Overflow用户

发布于 2015-01-05 22:51:18

检查配置文件,您可以看到一些env。

在64位debian上,以下命令行将构建32位版本的libz

代码语言:javascript
复制
CFLAGS=-m32 ./configure
票数 5
EN

Stack Overflow用户

发布于 2019-06-08 19:20:55

使用CFLAGS=-32对我来说是行不通的,configure脚本仍然告诉我应该使用win32/Makefile.gcc

zlib的最新版本是1.2.11,所以到目前为止,它的差异应该是最小的。在没有任何系统上下文的情况下,下面的内容可能对目前面临类似问题的其他用户很有用。

我在Linux (Ubuntu 18.04)上交叉编译,目标是生成32位版本的zlib。我所做的如下所示。

  1. ./configure (这只是为了让我们有所需的文件到构建过程,我们将使用不同的Makefile )
  2. 修改其win32/Makefile.gccPREFIX=i686-w64-mingw32- (对于64位,您可以通过make install -fwin32/Makefile.gcc SHARED_MODE=1 INCLUDE_PATH=/tmp/zlib-win32/include LIBRARY_PATH=/tmp/zlib-win32/lib BINARY_PATH=/tmp/zlib-win32/bin将其更改为PREFIX=x86_64-w64-mingw32-.
  3. make -fwin32/Makefile.gcc
  4. Install到您想要的位置。注意,您需要指定INCLUDE_PATHLIBRARY_PATHBINARY_PATHBINARY_PATH将包含结果.dll文件。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6520544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档