From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hartmut Goebel Subject: Re: QT install and search paths Date: Sat, 2 Sep 2017 18:40:44 +0200 Message-ID: <0f97b74f-282d-9996-aa61-d3084e164b09@crazy-compilers.com> References: <42cac0e9-d948-3ea1-7312-d003751fd6a8@crazy-compilers.com> <874lsxi3bx.fsf@member.fsf.org> <4a1d7083-eb0a-9c79-fd54-686b822da5ed@crazy-compilers.com> <87378fkeho.fsf@member.fsf.org> <87o9r3iqh7.fsf@member.fsf.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="------------8A4A0FEF1B8FEF2867CB84B4" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54607) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1doBTb-0001cK-PO for guix-devel@gnu.org; Sat, 02 Sep 2017 12:41:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1doBTW-0004Ft-SC for guix-devel@gnu.org; Sat, 02 Sep 2017 12:40:55 -0400 Received: from mail-out.m-online.net ([212.18.0.9]:51059) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1doBTW-0004FE-B5 for guix-devel@gnu.org; Sat, 02 Sep 2017 12:40:50 -0400 In-Reply-To: Content-Language: en-US List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: =?UTF-8?B?5a6L5paH5q2m?= Cc: guix-devel , Thomas Danckaert This is a multi-part message in MIME format. --------------8A4A0FEF1B8FEF2867CB84B4 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Am 27.08.2017 um 18:49 schrieb Hartmut Goebel: > It is searched in several sub-directories of > /tmp/guix-build-=E2=80=A6/qtwayland-opensource-src-5.9.1/plugins/platfo= rms/../../../ > (which is the /tmp/guix-build-qtwayland-5.9.1.drv-0 directory), but > not in =E2=80=A6/lib. I did not find out how to Uff, I tracked this down in a heavy thinking session. * This search-path stems from the libraries RUNPATH, which was $ORIGIN/../../lib and is now only $ORIGIN/../../../ * The RUNPATH is set in /gnu/store/=E2=80=A6-qtbase-5.9.1/lib/qt5/mkspecs/features/qt.prf lin= e 272, using the relative path from $$qtRelativeRPathBase (which equals $target.path, which is /gnu/store/=E2=80=A6-qtbase-5.9.1/lib/qt5/plugins/platforms) to $QT_INSTALL_LIBS (which is /gnu/store/=E2=80=A6-qtbase-5.9.1/lib).=C2= =A0 This relative path obviously is ../../../ . * Prior to this patch we installed the plugins into =E2=80=A6-qtbase-5.9.1/plugins, which results in the aforementioned r= elative path to be ../../lib and the RUNPATH to be set to $ORIGIN/../../lib. Conclusions: 1. It's been pure luck that the qtwayland tests passed prior to this chan= ge. 2. Do make the tests pass, we need to set LD_LIBRARY_PATH prior to running the tests 3. tests of other packages may fail for the same reason. I'll take care of the packages in kde-frameworks.scm, I assume/hope Thomas will take care of the ones in kde.scm. =E5=AE=8B=E6=96=87=E6=AD=A6, how can we coordinate the required changes? = Should they go into one patch? Or into a series? --=20 Regards Hartmut Goebel | Hartmut Goebel | h.goebel@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible | --------------8A4A0FEF1B8FEF2867CB84B4 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable
Am 27.08.2017 um 18:49 schrieb Hartmut Goebel:
It is searched in several sub-directories of /tmp/guix-build-=E2=80=A6/qtwayland-opensource-src-5.9.1/plugins/platform= s/../../../ (which is the /tmp/guix-build-qtwayland-5.9.1.drv-0 directory), but not in =E2=80=A6/lib. I did not find out how to

Uff, I tracked this down in a heavy thinking session.
  • This search-path stems from the libraries RUNPATH, which was $ORIGIN/../../lib and is now only $ORIGIN/../../../

  • The RUNPATH is set in /gnu/store/=E2=80=A6-qtbase-5.9.1/lib/qt5/mkspecs/features/qt.p= rf line 272, using the relative path from $$qtRelativeRPathBase (which equals $target.path, which is /gnu/store/=E2=80=A6-qtbase-5.9.1/lib/qt5/plugins/platforms) to $QT_INSTALL_LIBS (which is /gnu/store/=E2=80=A6-qtbase-5.9.1/li= b).=C2=A0 This relative path obviously is ../../../ .

  • Prior to this patch we installed the plugins into =E2=80=A6-qtbase-5.9.1/plugins, which results in the aforementi= oned relative path to be ../../lib and the RUNPATH to be set to $ORIGIN/../../lib.

Conclusions:

1. It's been pure luck that the qtwayland tests passed prior to this change.

2. Do make the tests pass, we need to set LD_LIBRARY_PATH prior to running the tests

3. tests of other packages may fail for the same reason.

I'll take care of the packages in kde-frameworks.scm, I assume/hope Thomas will take care of the ones in kde.scm.

=E5=AE=8B=E6=96=87=E6=AD=A6, how can we coordinate the required ch= anges? Should they go into one patch? Or into a series?

--
Regards
Hartmut Goebel

| Hartmut Goebel          | h.goebel@crazy-compilers.com   =
            |
| www.crazy-compilers.com | compilers which you thought are impo=
ssible |
--------------8A4A0FEF1B8FEF2867CB84B4--