You can skip the lipo step, gcc will do it for you if you provide the
right flags. You can also include 64-bit in there. If you want to
do specific optimizations for each CPU, then you'll have to build
each separately and use lipo to assemble them all into one.
CFLAGS="-arch i386 -arch ppc -arch x86_64 -arch ppc64"
LDFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch
ppc -arch x86_64 -arch ppc64"
Pd-extended is not universal (yet?). I think it should be, it's just
a matter of someone doing the work.
.hc
On Nov 25, 2007, at 5:49 PM, Alexandre Quessy wrote:
Thanks Thomas ! Is this what is done in pd-extended ? I guess not.
a
2007/11/25, Thomas Grill gr@grrrr.org:
Hi,
On OSX, how can we build universal binaries for externals ? If not possible, both ppc and intel architecture use
the .pd_darwin suffix...the easiest approach is to make separate externals for each
architecture (like ppc, ppc64, i386) and glue them together with lipo.lipo -create myext.i386.pd_darwin myext.ppc.pd_darwin -output myext.pd_darwin
The flext build system uses a slightly different approach by
compiling architecture-specific object files (because the compiler flags may be architecture-specific), use lipo to make UB object files and then
call the linker with something like g++ -dynamic -arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -o myext.pd_darwin objectfiles....greetings, Thomas
-- Alexandre Quessy http://alexandre.quessy.net http://www.puredata.info/Members/aalex
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/ listinfo/pd-list
"[W]e have invented the technology to eliminate scarcity, but we are
deliberately throwing it away to benefit those who profit from
scarcity." -John Gilmore