[Debian-med-packaging] Bug#977308: dpkg-shlibdeps: error: cannot find library (Was: Bug#977308: shasta: hardcoded dependencies on boost 1.71)

Andrey Rahmatullin wrar at debian.org
Fri Dec 18 18:36:27 GMT 2020


On Fri, Dec 18, 2020 at 04:07:50PM +0100, Andreas Tille wrote:
> On Fri, Dec 18, 2020 at 07:37:12PM +0500, Andrey Rahmatullin wrote:
> > On Fri, Dec 18, 2020 at 03:32:01PM +0100, Andreas Tille wrote:
> > > I tried no override_dh_shlibdeps in shasta debian/rules, which has lead
> > > to:
> > > 
> > > dpkg-shlibdeps: error: cannot find library /usr/lib/python3/dist-packages/shasta.cpython-39-x86_64-linux-gnu.so needed by debian/shasta/usr/bin/shasta (ELF format: 'elf64-x86-64' abi:      '0201003e00000000'; RPATH: '')
> > Why are you linking an executable to a Python binary module?
> 
> That's a good question.  Its actually not me who did this.  I think
> that's done here:
> 
>    https://salsa.debian.org/med-team/shasta/-/blob/master/debian/rules#L27
Eww.
But dynamicLibrary/README.md says:
"""
This directory builds the Shasta dynamic library `shasta.so`.
This library is used in three ways:

* It is linked in by the shasta dynamic executable `shastaDynamic`.
* It can be imported by a python script via `import shasta` to provide Shasta Python bindings.
* It can be statically linked in by other C++ code outside Shasta that uses Shasta as a library.
"""
So this sharing seems to be by design. That's unfortunate (can't say I'm
surprised, though).

> but I admit I have no idea why Shayan did so.
Well, otherwise the binary wouldn't find the library.

> I wonder what might be the proper way to do this to share the library
> between Python modules and the executable.
The proper way is to separate the common code from the Python bindings and
link this correctly separated shared library into both the executable and
the binary module libraries.

-- 
WBR, wRAR
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 894 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/debian-med-packaging/attachments/20201218/e500320b/attachment-0001.sig>


More information about the Debian-med-packaging mailing list