Hi! I would be interested in having the "gcc libraries" statically linked to my binary, but still use one shared-object (a commercial library for which no static version is available), so '-static' is not really an option, as far as I can tell... I haven't been able to pull this off, and got an answer from gcc-help@gcc.gnu.org that it's actually impossible... Nevertheless, as far as I can tell most commercial compiler allow this, so it's probably technically possible, if it's not too much trouble, I think it would be nice to have... Thanks! Philippe PS: I tried this with Using built-in specs. Target: x86_64-unknown-linux-gnu Configured with: /USER/philippe/Irix/Gcc_Sources/configure --prefix=/WORK/philippe/Tools/Gcc --enable-languages=c,fortran --with-mpfr=/WORK/philippe/Tools/Mpfr --with-gmp=/WORK/philippe/Tools/Gmp Thread model: posix gcc version 4.2.0 20060504 (experimental) PPS: it could be related to Bug#: 7516
(In reply to comment #0) > Hi! > > I would be interested in having the "gcc libraries" statically linked to my > binary, but still use one shared-object (a commercial library for which no > static version is available), so '-static' is not really an option, as far as I > can tell... e.g. libfoo.so is a commercial shared library. $ ldd libfoo.so libc.so.6 => /lib64/libc.so.6 (0x00002b388050d000) /lib64/ld-linux-x86-64.so.2 (0x0000555555554000) $ cat exec.c extern void foo(); int main() { foo(); return 0; } $ gcc exec.c -o exec -static-libgcc -Wl,-rpath,. -L. -lfoo $ ldd exec libfoo.so => ./libfoo.so (0x00002b795f7fc000) libc.so.6 => /lib64/libc.so.6 (0x00002b795f917000) /lib64/ld-linux-x86-64.so.2 (0x00002b795f6e1000)
Hi! Thanks a lot! That's exactly what I was looking for: I don't seem to be able to do the same with libgfortran, though... have I missed something, or should request that? Thanks! Philippe PS: I don't seem to find any reference to that in the documentation: it would probably be worth adding...
Configure GCC with --disable-shared instead.
I hadn't thought about that... Thanks a lot for your help! Philippe