在64位OSX上构建32位libcurl

Build 32 bit libcurl on 64 bit OSX

本文关键字:32位 libcurl 构建 64位 OSX      更新时间:2023-10-16

根据文档,我正试图在64位OSX安装(Yosemite 10.10.5)上为OSX构建一个32位的curl库。我试过打电话/使用许多不同的参数进行配置,但这是我希望覆盖所有基础的参数:

CFLAGS='-m32 -arch i386' LDFLAGS='-arch i386' ./configure --host=i386-apple

我也尝试过不同的主机,如x86苹果、x86苹果darwin、i386苹果darwin等。据我所见,它们的构建都没有问题,但当我尝试构建另一个32位项目,链接到生成的dylib时,我会收到以下错误消息

warning: ignoring file [...]/libcurl.a, file was built for archive which is not the architecture being linked (i386)

然后是的几种变体

Undefined symbols for architecture i386:
"_curl_easy_cleanup" [...]

呼叫

lipo -info libcurl.a

产生以下结果

fatal error: [...]/lipo: archive with no architecture specification: libcurl.a

我做错了什么?是我的/configure调用格式不正确,是否缺少标志或参数?根据安装说明,人们已经成功地编译到i386 Mac OS X,所以我假设我缺少

也许已经晚了,但由于我刚刚撞到了同一堵墙。。。您可以尝试在配置选项中指定:

./configure --build=i386-darwin --host=x86_64-darwin

据我所知,host表示您正在构建的机器的体系结构,而build是目标体系结构。