guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 'patchelf' doesn't change shared libraries


From: Ludovic Courtès
Subject: Re: 'patchelf' doesn't change shared libraries
Date: Sun, 14 Jul 2013 15:44:16 +0200
User-agent: Gnus/5.130007 (Ma Gnus v0.7) Emacs/24.3 (gnu/linux)

Nikita Karetnikov <address@hidden> skribis:

> I've attached a patch that fails with this error
>
> /nix/store/4g873aa2h6c8c2qfsiw0j1cbvhginx4d-ghc-bin-7.0.1/lib/ghc-7.0.1/ghc-pkg:
>  error while loading shared libraries: libgmp.so.3: cannot open shared object 
> file: No such file or directory
> make[1]: *** [install_packages] Error 127
> make: *** [install] Error 2

[...]

>                                       (system (format #f
>                                                       "~a ~a ~a ~a ~a:~a ~a"
>                                                       (which "patchelf")
>                                                       "--set-interpreter"
>                                                       linker
>                                                       "--set-rpath"
>                                                       gmp
>                                                       ncurses
>                                                       file))))

Look like it should work.

Could you run ‘objdump -x .../ghc-pkg | grep PATH’, to check what its
actual RPATH/RUNPATH is?

Perhaps you could try to run it by hand to see what happens (copy the
original binary by hand, and try it.)

(Stylistic note: prefer ‘system*’, which allows arguments to be
distinguished, whereas ‘system’ uses shell expansion.  Prefer
‘string-append’ over ‘format’ for concatenation.

Better yet: use ‘augment-rpath’ from (guix build rpath).)

HTH,
Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]