The hint below is actually a hack. The correct solution would be to add “-mmacosx-version-min=10.4” to the compiler and linker command as mentioned in this post or follow the comment below this post.
If you compile a programm/library on Mac OS X 10.5 (Leopard) against the 10.4u SDK as suggested in this technote to create a universal binary you may encounter this error message:
ld: library not found for -lcrt1.10.5.o
In that case you need to create a symbolic link
sudo ln -s /Developer/SDKs/MacOSX10.4u.sdk/usr/lib/crt1.o /Developer/SDKs/MacOSX10.4u.sdk/usr/lib/crt1.10.5.o
This might solve the linking problem than. This hint was found here and here.
set an environment variable that gcc/ld can see (in your makefile is recommended) that matches the SDK isysroot you have selected:
MACOSX_DEPLOYMENT_TARGET=10.4
export MACOSX_DEPLOYMENT_TARGET