On 5 Nov 2005, at 11:59, YAMAMOTO Mitsuharu wrote: >> Have you tried setting the environment variable >> MACOSX_DEPLOYMENT_TARGET=10.4 ? E.g. > >> MACOSX_DEPLOYMENT_TARGET=10.4 ./make-package (...) > >> I heard that helps you build binaries that run on all 10.4 versions. > > Do you have any references explaining why it works (or why binary > compatibility is broken without it)? Not sure. This technote seems to apply: http://developer.apple.com/technotes/tn2002/tn2064.html What I gather from that document: MACOSX_DEPLOYMENT_TARGET is a linker flag, and without it being set to at least 10.2, the linker doesn't seem to do "weak linking", that is, it'll always statically bind to the libraries present on the build system. Code that imports symbols may need to set a weak_import flag set as follows: extern int SayHello() __attribute__((weak_import)); The code doesn't currently seem to use it. MACOSX_DEPLOYMENT_TARGET probably does more than that. Maybe it would be worth setting MACOSX_DEPLOYMENT_TARGET to 10.3 and build on a 10.4 machine.