This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/41605] Static linking of libgcc/libgfortran/libstdc++ can cause inconsistent symbol resolution.

------- Comment #1 from developer at sandoe-acoustics dot co dot uk  2009-10-06 15:56 -------
Created an attachment (id=18727)
 --> (
make sure that static linking of libraries is consistent

this patch provides:
(a) new spec with direct resolution for libgomp that provides a static version
LINK_COMMAND_SPECS for darwin and darwin9+
(b) file replacement specs for libstdc++.

if  static libgcc => link libgomp, libgfortran, libstdc++ statically
if static libstdc++ || libgfortran || libgcc link libgomp statically.

bootstrapped on powerpc-apple-darwin8, i686-apple-darwin9.
object checked by hand with otool for correct library refs, reg-tested for
check-target-libgomp {m32,m64}{-static-libgcc,

Note static-libstdc++ will not work without changes on PR4194/PR4196

       *gcc/config/darwin.h(LINK_COMMAND_SPEC): Resolve fopenmp specifically
for target
        (LINK_SPEC): replace dynamic libraries by static equivalents where
       *gcc/config/darwin9.h(LINK_COMMAND_SPEC): Resolve fopenmp specifically
for target


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]