[Nix-dev] Correct way to solve `libgcc_s.so.1` problem

Eelco Dolstra eelco.dolstra at logicblox.com
Wed Oct 16 11:17:07 CEST 2013


On 16/10/13 01:09, Daniel Hlynskyi wrote:

> [6] uqm
>  /* uses pthread_cancel(), which requires libgcc_s.so.1 to be
>     loadable at run-time. Adding the flag below ensures that the
>     library can be found. Obviously, though, this is a hack. */
>   NIX_LDFLAGS="-lgcc_s";

This is the easiest solution and should work in all cases (except 3rd party
binaries, which need the "patchelf --set-rpath" solution).

Of course, even better would be to fix this globally, but that's not so easy (it
would require glibc to know the path of libgcc_s, but to do that in glibc would
create a cyclic dependency).  We could have the gcc wrapper add gcc's lib
directory to the RPATH of every binary, I guess.

Eelco Dolstra | LogicBlox, Inc. | http://nixos.org/~eelco/

More information about the nix-dev mailing list