[PD-dev] building fluidsynth~ (was: building fluid~ on Linux)

Alexandre Torres Porres porres at gmail.com
Sat Apr 30 23:33:58 CEST 2022


so, I tried using the dinamic libs from mojave in monterey, it works, but
the OS kept bugging me and forcing me to allow them to be loaded like over
a dozen times until it could just load things...

I now made fat binary for intel/arm, included the dynamic libs from mojave,
for testing.

I tried loading this back on mojave, it failed, I get the same error  (load
command 0x80000034 is unknown) - so I get the same thing as before when I
tried a pd_darwin compiled in monterey with the libs generated from the
monterey compilation, which now I can see it is obvious, cause it was
compiled in monterey with the proper libs and I swicthed them, so I did
nothing new. All I learned is that a new system can load something compiled
in an older system... it did work, but with several annoying warnings that
the libs weren't allowed.

I'll try Catalina to see if it can create binaries for a wider range.

Em sáb., 30 de abr. de 2022 às 17:33, Alexandre Torres Porres <
porres at gmail.com> escreveu:

> sorry for so many emails, but now I see that when compiling on monterey I
> get this warning
>
> ld: warning: dylib (/usr/local/lib/libfluidsynth.dylib) was built for
> newer macOS version (12.0) than being linked (10.6)
>
> So I guess that's it, when installing fluidsynth for monterey and
> compiling it there I may run into trouble by loading it in earlier systems
> like mojave (10.14.6). Makes sense?
>
> I'm dropping support for mac 32 bit externals, but I'd like to have a fat
> binary that works for mac intell and arm but supports a good/wider range of
> operating systems...
>
> maybe if I try the minimum OS required to build for mac arm, anyone knows
> what it is? I think I heard 'catalina' once...
>
> cheers
>
> Em sáb., 30 de abr. de 2022 às 17:09, Alexandre Torres Porres <
> porres at gmail.com> escreveu:
>
>> Ok, both compilations generate the exact same files and the process was
>> the some. Only difference is the setup
>>
>> air intel, mojave, xcode 11.3.1 (works)
>> pro intel, montrey xcode 13 (nope)
>>
>> the error I get from the binary generated in the pro is
>>
>> /Users/ale/Downloads/fluidsynth~_pro/./fluidsynth~.pd_darwin:
>> dlopen(/Users/ale/Downloads/fluidsynth~_pro/./fluidsynth~.pd_darwin, 10):
>> Library not loaded: @loader_path/libfluidsynth.3.dylib
>>
>>   Referenced from:
>> /Users/ale/Downloads/fluidsynth~_pro/./fluidsynth~.pd_darwin
>>   Reason: no suitable image found.
>>
>> Did find:
>> /Users/ale/Downloads/fluidsynth~_pro/./libfluidsynth.3.dylib: cannot load
>> 'libfluidsynth.3.dylib' (load command 0x80000034 is unknown)
>> /Users/ale/Downloads/fluidsynth~_pro/libfluidsynth.3.dylib: cannot load
>> 'libfluidsynth.3.dylib' (load command 0x80000034 is unknown)
>>
>>
>> So it seems it finds the generated and shipped dylib, but it is corrupted
>> somehow.
>>
>> Em sáb., 30 de abr. de 2022 às 16:57, Alexandre Torres Porres <
>> porres at gmail.com> escreveu:
>>
>>> ok, instead of building in my new system, I tried compiling on and old
>>> macbook air (it's not the machine I was using a year ago to compile this by
>>> the way). This system seems to have built something that works, see
>>> https://github.com/porres/pd-fluidsynth/issues/9#issuecomment-1114044528
>>> (where I'm discussing things in portuguese with charles).
>>>
>>> I have to see now what is the difference between both outputs.
>>>
>>> Em sáb., 30 de abr. de 2022 às 16:46, Alexandre Torres Porres <
>>> porres at gmail.com> escreveu:
>>>
>>>> Hi, after more than a year, I'm finally going to release my fluidsynth~
>>>> object as part of ELSE. There were lots of discussion on this list about
>>>> this. One big issue was how to ship the external along with the library
>>>> dependencies. There are scripts taken from https://git.iem.at/pd/iem-ci to
>>>> copy the libs to the same folder as the external. It seems we got to a
>>>> point of being able to build it for mac and windows. This last thread (from
>>>> where I'm now opening a new one) was about building it for Linux.
>>>>
>>>> After so long I just tried to build it on my new system and my new
>>>> challenge would be to see if it'd work for apple silicon macs. First I just
>>>> tried building for mac intel using my new setup, a monterey machine with
>>>> the latest XCode. I started by installing fluidsynth, now at a much more
>>>> recent version 2.2.7, I then built the external and it worked fine in the
>>>> system I built this on. I tried the localdeps.macos.sh script and it
>>>> did copy all the libs to the same folder as the external, so I zipped it
>>>> and uploaded to
>>>> https://github.com/porres/pd-fluidsynth/releases/tag/0.0.0-test so I
>>>> could test on another machine without fluidsynth and all... guess what? it
>>>> didn't work!
>>>>
>>>> By the way, someone built it for windows and I was able to test that it
>>>> works on a virtual windows machine, so I don't know what could be wrong
>>>> with my setup... See
>>>> https://github.com/charlesneimog/pd-fluidsynth/releases/tag/v0.0.1
>>>> note that there's also a mac version there, but it doesn't work either and
>>>> seems to be worse than my attempt as there a no libs copied. You cal also
>>>> test the linux version in there.
>>>>
>>>> Hope someone can give me a hint why my new attempt didn't work for mac,
>>>> I don't know what could be different other than having a new system a new
>>>> version of the OS, of XCode and fluidsynth.
>>>>
>>>> cheers
>>>>
>>>>
>>>> Em qui., 14 de jan. de 2021 às 18:16, Roman Haefeli <reduzent at gmail.com>
>>>> escreveu:
>>>>
>>>>> On Thu, 2021-01-14 at 16:52 +0100, IOhannes m zmölnig wrote:
>>>>> > On 1/14/21 10:42 AM, Roman Haefeli wrote:
>>>>> > > See PR:
>>>>> > > https://github.com/porres/pd-fluidsynth/pull/5
>>>>> > >
>>>>> >
>>>>> > given that i consider myself upstream of the original
>>>>> > "localdeps.*.sh"
>>>>> > scripts and those scripts are located under
>>>>> > https://git.iem.at/pd/iem-ci
>>>>> > where they are used by a number of (our, that is: the iem's)
>>>>> > libraries,
>>>>> > i would highly welcome it if you could submit a PR to that central
>>>>> > location rather than a single one of the consumers of those scripts.
>>>>>
>>>>> Sure. I wasn't even aware of the origin of those files.
>>>>>
>>>>> Re PR/MR:
>>>>> While logged in as reduzent, I see only comport listed as repos I can
>>>>> create MRs for. I don't seem to have privileges for forking on
>>>>> git.iem.at nor for creating MRs for the iem-ci repo. Tell me if I'm
>>>>> overseeing something.
>>>>>
>>>>> I created a fork on:
>>>>> https://gitlab.zhdk.ch/rhaefeli/iem-ci
>>>>>
>>>>> You'll find the script addition in the linuxdep branch.
>>>>>
>>>>> Roman
>>>>> _______________________________________________
>>>>> Pd-dev mailing list
>>>>> Pd-dev at lists.iem.at
>>>>> https://lists.puredata.info/listinfo/pd-dev
>>>>>
>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20220430/6b1413af/attachment-0001.htm>


More information about the Pd-dev mailing list