Bug#712666: Info received (Bug#712666: primus: fatal: failed to load PRIMUS_LOAD_GLOBAL)

Vincent Cheng vincentc1208 at gmail.com
Fri Jun 21 09:42:30 UTC 2013


On Wed, Jun 19, 2013 at 2:28 AM, Mathieu Malaterre <malat at debian.org> wrote:
> On Wed, Jun 19, 2013 at 11:21 AM, Vincent Cheng <vincentc1208 at gmail.com> wrote:
>> On Tue, Jun 18, 2013 at 5:50 AM, Mathieu Malaterre <malat at debian.org> wrote:
>>> I would say that d/control is incomplete, it should read:
>>>
>>> Package: primus-libs
>>> Architecture: i386 amd64
>>> Depends: ${shlibs:Depends}, ${misc:Depends}, libglapi-mesa
>>>
>>> Here is what i see:
>>>
>>> $ strings /usr/lib/primus/libGL.so.1 | grep glapi
>>> libglapi.so.0
>>>
>>>
>>> Comments ?
>>
>> Why does dpkg-shlibdeps not add libglapi-mesa as a dependency / how
>> can I get dpkg-shlibdeps to do that? I'd much rather avoid hardcoding
>> dependencies if at all possible.
>
> Simply because the lib is never linked in. It is dlopen'ed:
>
> $ grep -r PRIMUS_LOAD_GLOBAL *
> libglfork.cpp:    needed_global(dlopen(getconf(PRIMUS_LOAD_GLOBAL),
> RTLD_LAZY | RTLD_GLOBAL)),
>
> dpkg-shlibdeps simply read the output of readelf -d /usr/lib/bla.so.
> So in this case yes you have to explicitly add the Depends yourself
> -IMHO-. Maybe there are other way to do it, but I do not know.
>
> HTH

After a short conversation with upstream [1], I believe that this is
more likely than not some sort of packaging issue with mesa. Mesa in
all currently supported versions of Debian is built with
--enable-shared-glapi, so theoretically libgl1-mesa-glx (which
contains mesa's libGL.so.1) should pull in libglapi-mesa
automatically. That's definitely the case on my current jessie/sid
system:

$ apt-cache depends libgl1-mesa-glx | grep glapi
  Depends: libglapi-mesa

i.e. we shouldn't have to declare an explicit dependency on libglapi-mesa.

Regards,
Vincent

[1] https://github.com/Bumblebee-Project/bumblebee-ppa/issues/19



More information about the pkg-nvidia-devel mailing list