From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: runpath validation Date: Thu, 20 Apr 2017 10:10:46 +0200 Message-ID: <87fuh35wjd.fsf@gnu.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:33375) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d17Ay-0004ks-R3 for help-guix@gnu.org; Thu, 20 Apr 2017 04:10:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d17Au-0002rX-Qc for help-guix@gnu.org; Thu, 20 Apr 2017 04:10:52 -0400 In-Reply-To: (catonano@gmail.com's message of "Tue, 18 Apr 2017 22:55:21 +0200") List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Catonano Cc: help-guix Hello! Catonano skribis: > Thanks to Snape I could find objdump and attempt what is suggested here > https://en.wikipedia.org/wiki/Rpath > > me@my-machine /gnu/store/zv2c9mbs4q7f75p9xlgxs62fb5wmp3ac-granite-0.4.0.1$ > objdump -a -x bin/granite-demo | grep NEEDED > NEEDED libgranite.so.3 <--- here it is > NEEDED libgtk-3.so.0 > NEEDED libgdk-3.so.0 > NEEDED libpangocairo-1.0.so.0 > NEEDED libpango-1.0.so.0 > NEEDED libatk-1.0.so.0 > NEEDED libcairo-gobject.so.2 > NEEDED libcairo.so.2 > NEEDED libgdk_pixbuf-2.0.so.0 > NEEDED libgio-2.0.so.0 > NEEDED libgthread-2.0.so.0 > NEEDED libgee-0.8.so.2 > NEEDED libgobject-2.0.so.0 > NEEDED libglib-2.0.so.0 > NEEDED libm.so.6 > NEEDED libgcc_s.so.1 > NEEDED libc.so.6 > > > and > > me@my-machine /gnu/store/zv2c9mbs4q7f75p9xlgxs62fb5wmp3ac-granite-0.4.0.1$ > objdump -a -x bin/granite-demo | grep RPATH You should grep for RUNPATH, and I guess that will show that /gnu/store/zv2c9mbs4q7f75p9xlgxs62fb5wmp3ac-granite-0.4.0.1/lib is *not* in there, even though it should (if it=E2=80=99s not in RUNPATH, then launc= hing =E2=80=98granite-demo=E2=80=99 will result in a =E2=80=9Clibrary not found= =E2=80=9D error, which is what this validation phase wants to avoid.) To fix this, you need to make sure the link command for =E2=80=98granite-de= mo=E2=80=99 has an explicit -lgranite or similar; ld-wrapper will take care of adding the corresponding -rpath switch. HTH! If needed, we can discuss it further on IRC. Ludo=E2=80=99.