------- Comment #3 from mrs at apple dot com 2006-11-11 09:25 ------- I think I know what's going on. Libraries contain an install name when built, this is what it put into the file that is linked against the library. The problem is, the install name isn't correct, until the file is installed. So, one solution, would be to build the library with the build tree name, and then during install, change the name.
I wonder what libstdc++ is doing. I do wonder why it works better in 32-bit mode? I wonder if have 64-bit: $ file /usr/lib/libgcc_s.1.dylib /usr/lib/libgcc_s.1.dylib: Mach-O universal binary with 4 architectures /usr/lib/libgcc_s.1.dylib (for architecture i386): Mach-O dynamically linked shared library i386 /usr/lib/libgcc_s.1.dylib (for architecture x86_64): Mach-O 64-bit dynamically linked shared library x86_64 /usr/lib/libgcc_s.1.dylib (for architecture ppc): Mach-O dynamically linked shared library ppc /usr/lib/libgcc_s.1.dylib (for architecture ppc64): Mach-O 64-bit dynamically linked shared library ppc64 I wonder, if you try building these with --shared-libgcc, does it then work? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28913