On 2009-02-14 16:27:22 -0500, Walter Bright <newshou...@digitalmars.com> said:

Anders F Björklund wrote:
I gather this only works with Mac OS X 10.5 "Leopard" ?

$ dmd/osx/bin/dmd hello.d
Bus error

Could it be rebuilt with the MacOSX10.4u.sdk, perhaps ?

Is 10.5 really binary incompatible with 10.4 ?

It is compatible, unless you're using a new API or new linker features which weren't available in 10.4.

Development on Mac OS X works by choosing a target SDK and a deployment target version. Unless you want to use new APIs from 10.5, you should use the MacOSX10.4u.sdk SDK. Here's some documentation about how to do that:

<http://developer.apple.com/documentation/developertools/conceptual/cross_development/Using/chapter_3_section_2.html#//apple_ref/doc/uid/20002000-1114311-BABGCAAB>

If you use the 10.5 SDK, or no SDK at all, then the new APIs from 10.5 are available and if your software links to some of that it won't be possible to run it on 10.4. You can set the (minimum) deployment target to 10.4 if you want: this will cause functions from 10.5 to be weak-linked, and then you can check at runtime if they're available and not use them if they're not. But if you don't need anything specific to 10.5, you should just use the 10.4 SDK and then you'll be pretty sure it runs correctly there.


And not even a nice message when it isn't?

Unfortunately no, not automatically.

--
Michel Fortin
michel.for...@michelf.com
http://michelf.com/

Reply via email to