Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.maint.python > #12462 > unrolled thread

where should we put private libraries

Started bypicca <picca@debian.org>
First post2020-04-12 15:20 +0200
Last post2020-04-12 16:20 +0200
Articles 3 — 3 participants

Back to article view | Back to linux.debian.maint.python


Contents

  where should we put private libraries picca <picca@debian.org> - 2020-04-12 15:20 +0200
    Re: where should we put private libraries Andrey Rahmatullin <wrar@debian.org> - 2020-04-12 15:40 +0200
      RE:where should we put private libraries PICCA Frederic-Emmanuel <frederic-emmanuel.picca@synchrotron-soleil.fr> - 2020-04-12 16:20 +0200

#12462 — where should we put private libraries

Frompicca <picca@debian.org>
Date2020-04-12 15:20 +0200
Subjectwhere should we put private libraries
Message-ID<zUKGK-1LT-7@gated-at.bofh.it>

Hello, I am working on the dials[1] package. This scientific software
produce a bunch of python extension via boost python, but also a bunch
of libraries, which are the common part of the python extension.
when I package it, I moved the common library under the /usr/lib/<arch>/
directory. This way the extension can find them without problem. but
then I have a lintian error about


E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libann.so
30 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libasymmetric_map.so
31 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libcctbx.so
32 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libcctbx_sgtbx_asu.so
33 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libdxtbxspotfinder.so
34 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libiotbx_mtz.so
35 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libiotbx_pdb.so
36 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libiotbx_xplor.so
37 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/liblegacy_scale.so
38 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libmmtbx_masks.so
39 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libmmtbx_tls.so
40 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libomptbx.so
41 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/librstbx.so
42 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libscitbx_boost_python.so
43 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libscitbx_minpack.so
44 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libscitbx_slatec.so
45 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libsmtbx_refinement_constraints.so
46 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libspotfinder.so
47 E: dials: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libxfel_mono_sim.so


so my question is how can I solve this error.
I thought about adding rpath to these libraries in order to move then
under a private  location /usr/lib/<package>. But for this I need to add
an rpath to all the extensions which use these libraries.

The issue is that the current build system do not provide rpath for
these libraries so I can not add one via chrpath.

In your opinion, what is the best way to solve this ?

thanks for your help


Frederic


[1] https://salsa.debian.org/science-team/dials
[é] https://salsa.debian.org/science-team/dials/-/jobs/661523

[toc] | [next] | [standalone]


#12463

FromAndrey Rahmatullin <wrar@debian.org>
Date2020-04-12 15:40 +0200
Message-ID<zUL06-1Ss-17@gated-at.bofh.it>
In reply to#12462

[Multipart message — attachments visible in raw view] — view raw

On Sun, Apr 12, 2020 at 03:18:39PM +0200, picca wrote:
> I thought about adding rpath to these libraries in order to move then
> under a private  location /usr/lib/<package>. 
This looks like the correct way to solve this.

> The issue is that the current build system do not provide rpath for
> these libraries so I can not add one via chrpath.
Well, ideally you need to fix the build system so that it sets the correct
rpath directly.

-- 
WBR, wRAR

[toc] | [prev] | [next] | [standalone]


#12464

FromPICCA Frederic-Emmanuel <frederic-emmanuel.picca@synchrotron-soleil.fr>
Date2020-04-12 16:20 +0200
Message-ID<zULCN-2lP-3@gated-at.bofh.it>
In reply to#12463
> > The issue is that the current build system do not provide rpath for
> > these libraries so I can not add one via chrpath.
> Well, ideally you need to fix the build system so that it sets the correct
> rpath directly.


I found patchelf whcih allows to add a rpath :))


So I just need to set the rpat for all the extensions and voila :)

Cheers

Frederic

[toc] | [prev] | [standalone]


Back to top | Article view | linux.debian.maint.python


csiph-web