|
From: | Peter O'Gorman |
Subject: | Re: Problem with Fortran shared libraries on OSX/Darwin |
Date: | Fri, 03 Sep 2004 12:31:51 +0900 |
User-agent: | Mozilla Thunderbird 0.7.3 (Macintosh/20040803) |
Tim Jenness wrote:
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -nostdlib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
I don't believe that you'll get working executables this way.The problem is actually the -single_module flag. It is needed to make c++ static constructors work better on darwin up to 7.x. The reason it fails on g77 (and on fsf gcc actually) is that Apple's gcc uses __private_extern__ symbols in libgcc and libstdc++. __private_extern__ symbols are magic, they are available in the static archive to resolve undefined symbols until they are linked whereupon they turn into local symbols. Fink's f77 libs don't have that magic.
Anyway, I'll fix the darwin commands to work with fsf gcc before libtool-2.0. Thanks for the report, I keep forgetting about this bug.
Peter -- Peter O'Gorman - http://www.pogma.com
[Prev in Thread] | Current Thread | [Next in Thread] |