[PD-dev] Compiling fat external binaries for Mac OS X

Dan Wilcox danomatika at gmail.com
Wed Jun 15 13:45:37 CEST 2022


In my opinion (and experience), it's easier to make a fat lib. This is how most things are distributed on the platform moving forward. Technically, providing the arches as separate files should be possible but the question comes down to naming and/or separating the distribution in such a way that the system lib loading can find them correctly. With a fat lib build, you don't have to worry about it. I have honestly never bothered to figure out the separate arch, separate lib approach beyond major differences of OS versions ie. macOS 10.6 - 10.9, macOS 10.10+, etc.

> On Jun 15, 2022, at 1:32 PM, pd-dev-request at lists.iem.at wrote:
> 
> Message: 2
> Date: Wed, 15 Jun 2022 13:32:09 +0200
> From: Roman Haefeli <reduzent at gmail.com <mailto:reduzent at gmail.com>>
> To: pd-dev <pd-dev at lists.iem.at <mailto:pd-dev at lists.iem.at>>
> Subject: Re: [PD-dev] Compiling fat external binaries for Mac OS X
> Message-ID: <ce868065d84420fd1d5115a34b0f433ba0a82d70.camel at gmail.com <mailto:ce868065d84420fd1d5115a34b0f433ba0a82d70.camel at gmail.com>>
> Content-Type: text/plain; charset="UTF-8"
> 
> On Wed, 2022-06-15 at 12:53 +0200, Dan Wilcox wrote:
>> 
>>> On Jun 15, 2022, at 12:00 PM, pd-dev-request at lists.iem.at <mailto:pd-dev-request at lists.iem.at> wrote:
>>> 
>>> Message: 1
>>> Date: Tue, 14 Jun 2022 14:23:16 +0200
>>> From:?reduzent at gmail.com <mailto:?reduzent at gmail.com>
>>> To:?pd-dev at lists.iem.at <mailto:?pd-dev at lists.iem.at>
>>> Subject: Re: [PD-dev] Compiling fat external binaries for Mac OS X
>>> Message-ID:
>>> <3646dbc2fcbfdf0a16d8feb20aa7bb11a6f5db58.camel at gmail.com <mailto:3646dbc2fcbfdf0a16d8feb20aa7bb11a6f5db58.camel at gmail.com>>
>>> Content-Type: text/plain; charset="UTF-8"
>>> 
>>> On Wed, 2022-06-08 at 20:04 +0200, Dan Wilcox wrote:
>>>> You can simply pass in the arches you want using the "arch"
>>>> makefile
>>>> variable:
>>>> 
>>>> make arch="x86_64 arm64"
>>> 
>>> That's cool to know. In the case of purest_json, I believe it ships
>>> with other dependencies (libjson?) and if those come from homebrew,
>>> they're probably not fat. Is my assumption correct, that a fat
>>> binary
>>> would have to link to fat binary??
>> 
>> I don't believe so. I think (not 100%) the system lib loading
>> mechanism just needs to find the lib *and* have the right arch. I
>> don't believe it matters if the lib is fat or not.
>> 
> 
> Thanks for the clarification. The interesting question (to me at least)
> is: If I want to support both archs, does the linked library need to be
> fat, or can I link to two separate files per dependency? If I can't
> link to different files for different archs, this means there is no
> other way  for maintaining support of both archs than to link to a fat
> library.
> 
> Roman

--------
Dan Wilcox
@danomatika <http://twitter.com/danomatika>
danomatika.com <http://danomatika.com/>
robotcowboy.com <http://robotcowboy.com/>



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20220615/196c840c/attachment-0001.htm>


More information about the Pd-dev mailing list