This is the mail archive of the gcc-help@gcc.gnu.org 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]

Avoiding libgcc_s.so dependency


Howdy all,

I'm struggling with libgcc_s.so.1. It seems that pretty much any
non-trivial program I compile ends up depending on libgcc_s.so.1.
Basically, this means that I can't distribute software without also
distributing this library, which is problematic for any number of
reasons.

I've been told to just build static binaries to avoid this problem,
but this is not an option on Solaris as Sun does not include all the
libraries needed to build static libraries of most software. My goal
is to be able to build binaries that avoid dependencies on any
third-party libraries, and only depends on Sun's bundled libraries.

The current project -- and problem -- is with OpenSSH 3.8.1p1 under
Solaris 9/sparc. OpenSSH picks up libcrypto.so.1 from OpenSSL (even
though libcrypto.a also exists), and that in turn forces libgcc_s.so.1
into the equation -- no matter what combination of gcc and ld flags I
try to keep this from happening.

So, two questions:

a) What is the purpose of libgcc_s.so.1, and does this purpose
outweigh the inconvenience this library causes? (Including one machine
we could no longer log into because removing the SMCgcc package from
it disabled sshd?)

b) Is there ANY way to get rid of this dependency without building a
fully static binary?


Thanks,

-Stian


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