Bug#875683: nvidia-graphics-drivers: libGL.so.1 missing with libglvnd libs

Luca Boccassi luca.boccassi at gmail.com
Thu Sep 14 23:30:25 UTC 2017


On Fri, 2017-09-15 at 00:14 +0100, Luca Boccassi wrote:
> On Wed, 2017-09-13 at 23:42 +0200, Andreas Beckmann wrote:
> > On 2017-09-13 15:47, Andreas Beckmann wrote:
> > > On 2017-09-12 22:01, Luca Boccassi wrote:
> > > > I built and installed, it pulled in libglvnd0 (:i386), but then
> > > > libGL.so.1 is gone from /usr/lib/(32|64 bit subdirs) so most
> > > > things
> > > > fail to run, including Gnome.
> > 
> > Are both libGL.so.1 missing or only one of them?
> 
> They were both missing.
> 
> > Did you manage to mix libgl1-nvidia-glvnd-glx:arch1 with
> > libgl1-nvidia-glx:arch2 ?
> 
> Nope, libgl1-nvidia-glvnd-glx was installed for both architectures.
> It was a straight apt dist-upgrade with locally built packages,
> without
> doing any manual intervention, this is the apt log:
> 
> Install: libglvnd0:amd64 (0.2.999+git20170802-4, automatic),
> libglvnd0:i386 (0.2.999+git20170802-4, automatic)
> Upgrade: libglx0-glvnd-nvidia:amd64 (375.82-1~deb9u1, 375.82-3.1),
> libglx0-glvnd-nvidia:i386 (375.82-1~deb9u1, 375.82-3.1), libgles-
> nvidia1:amd64 (375.82-1~deb9u1, 375.82-3.1), libgles-nvidia2:amd64
> (375.82-1~deb9u1, 375.82-3.1), libnvidia-ml1:amd64 (375.82-1~deb9u1,
> 375.82-3.1), nvidia-egl-icd:amd64 (375.82-1~deb9u1, 375.82-3.1),
> nvidia-egl-icd:i386 (375.82-1~deb9u1, 375.82-3.1), nvidia-
> driver:amd64
> (375.82-1~deb9u1, 375.82-3.1), nvidia-vdpau-driver:amd64 (375.82-
> 1~deb9u1, 375.82-3.1), libgl1-nvidia-glvnd-glx:amd64 (375.82-
> 1~deb9u1,
> 375.82-3.1), libgl1-nvidia-glvnd-glx:i386 (375.82-1~deb9u1, 375.82-
> 3.1), libglx-nvidia0:amd64 (375.82-1~deb9u1, 375.82-3.1), libglx-
> nvidia0:i386 (375.82-1~deb9u1, 375.82-3.1), libczmq-dev:amd64
> (4.0.2+git20170911-0, 4.0.2+git20170912-0), nvidia-kernel-dkms:amd64
> (375.82-1~deb9u1, 375.82-3.1), libegl-nvidia0:amd64 (375.82-1~deb9u1,
> 375.82-3.1), libegl-nvidia0:i386 (375.82-1~deb9u1, 375.82-3.1),
> nvidia-
> egl-common:amd64 (375.82-1~deb9u1, 375.82-3.1), libnvidia-cfg1:amd64
> (375.82-1~deb9u1, 375.82-3.1), libnvidia-cfg1:i386 (375.82-1~deb9u1,
> 375.82-3.1), nvidia-legacy-check:amd64 (375.82-1~deb9u1, 375.82-3.1),
> libczmq4:amd64 (4.0.2+git20170911-0, 4.0.2+git20170912-0), nvidia-
> kernel-support:amd64 (375.82-1~deb9u1, 375.82-3.1), nvidia-driver-
> libs:amd64 (375.82-1~deb9u1, 375.82-3.1), nvidia-driver-bin:amd64
> (375.82-1~deb9u1, 375.82-3.1), xserver-xorg-video-nvidia:amd64
> (375.82-
> 1~deb9u1, 375.82-3.1), libopengl0-glvnd-nvidia:amd64 (375.82-
> 1~deb9u1,
> 375.82-3.1), libopengl0-glvnd-nvidia:i386 (375.82-1~deb9u1, 375.82-
> 3.1), libnvidia-glcore:amd64 (375.82-1~deb9u1, 375.82-3.1),
> libnvidia-
> glcore:i386 (375.82-1~deb9u1, 375.82-3.1), libegl1-glvnd-nvidia:amd64
> (375.82-1~deb9u1, 375.82-3.1), libegl1-glvnd-nvidia:i386 (375.82-
> 1~deb9u1, 375.82-3.1), libnvidia-eglcore:amd64 (375.82-1~deb9u1,
> 375.82-3.1), libnvidia-eglcore:i386 (375.82-1~deb9u1, 375.82-3.1),
> nvidia-alternative:amd64 (375.82-1~deb9u1, 375.82-3.1)
> Remove: libgles-nvidia1:i386 (375.82-1~deb9u1), libgles-nvidia2:i386
> (375.82-1~deb9u1), libgles1-glvnd-nvidia:amd64 (375.82-1~deb9u1),
> libgles1-glvnd-nvidia:i386 (375.82-1~deb9u1), libgldispatch0-
> nvidia:amd64 (375.82-1~deb9u1), libgldispatch0-nvidia:i386 (375.82-
> 1~deb9u1), libgl1-glvnd-nvidia-glx:amd64 (375.82-1~deb9u1), libgl1-
> glvnd-nvidia-glx:i386 (375.82-1~deb9u1), libgles2-glvnd-nvidia:amd64
> (375.82-1~deb9u1), libgles2-glvnd-nvidia:i386 (375.82-1~deb9u1)
> 
> > I think I have a reproducer for a minimal sid chroot:
> > 
> > # dpkg --add-architecture i386
> > # apt-get update
> > # apt-get install libgl1:amd64
> > # apt-get install libgl1-nvidia-glvnd-glx:amd64
> > # find /usr/lib -name libGL.so.1
> > /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1
> > /usr/lib/x86_64-linux-gnu/libGL.so.1
> > # apt-get install libgl1-nvidia-glx:i386
> > # find /usr/lib -name libGL.so.1
> > /usr/lib/i386-linux-gnu/libGL.so.1
> > /usr/lib/i386-linux-gnu/nvidia/libGL.so.1
> > /usr/lib/i386-linux-gnu/nvidia/current/libGL.so.1
> > /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1
> > 
> > Should be fixed in r7480.
> > 
> > Another one: if you install libgl1:i386 libgl1:amd64
> > libgl1-nvidia-glx:amd64, you'll miss the i386 libGL.so.1
> > (It should work if you install libgl1-nvidia-glvnd-glx:amd64
> > instead)
> > 
> > Not sure how to handle that one, though ... but that's not
> > different
> > from behavior in jessie/stretch now:
> > 
> > apt-get install libgl1-nvidia-glx:amd64 libgl1-mesa-glx:amd64
> > libgl1-mesa-glx:i386
> > 
> > 
> > Andreas
> 
> Just built and installed, but the same result happens after a simple
> dist-upgrade:
> 
> $ ls /usr/lib/x86_64-linux-gnu/libGL.so.1
> ls: cannot access '/usr/lib/x86_64-linux-gnu/libGL.so.1': No such
> file or directory
> $ ls /usr/lib/i386-linux-gnu/libGL.so.1
> ls: cannot access '/usr/lib/i386-linux-gnu/libGL.so.1': No such file
> or directory
> 
> $ dpkg -l | grep libgl1
> ii  libgl1-mesa-dev:amd64                         13.0.6-
> 1+b2                                             amd64        free
> implementation of the OpenGL API -- GLX development files
> ii  libgl1-mesa-dri:amd64                         13.0.6-
> 1+b2                                             amd64        free
> implementation of the OpenGL API -- DRI modules
> ii  libgl1-mesa-dri:i386                          13.0.6-
> 1+b2                                             i386         free
> implementation of the OpenGL API -- DRI modules
> ii  libgl1-mesa-glx:amd64                         13.0.6-
> 1+b2                                             amd64        free
> implementation of the OpenGL API -- GLX runtime
> ii  libgl1-mesa-glx:i386                          13.0.6-
> 1+b2                                             i386         free
> implementation of the OpenGL API -- GLX runtime
> ii  libgl1-nvidia-glvnd-glx:amd64                 375.82-
> 3.1                                              amd64        NVIDIA
> binary OpenGL/GLX library (GLVND variant)
> ii  libgl1-nvidia-glvnd-glx:i386                  375.82-
> 3.1                                              i386         NVIDIA
> binary OpenGL/GLX library (GLVND variant)
> 
> libgl1-nvidia-glvnd-glx is the metapackage, and libgl1-glvnd-nvidia-
> glx 
> that ships libGL.so.1, and it's not installed.
> 
> The metapackage depends on:
> 
> Depends: libgl1 | libgl1-glvnd-nvidia-glx, libglx-nvidia0 (= 375.82-
> 3.1)
> 
> Given libglx-nvidia0 is already installed (it ships libGLX_nvidia),
> libgl1-glvnd-nvidia-glx is not pulled in I guess? Nothing else
> depends
> on it.
> 
> Trying to install them manually though makes apt results in an
> attempt
> to remove gnome:
> 
> $ sudo apt install libgl1-glvnd-nvidia-glx libgl1-glvnd-nvidia-
> glx:i386
> Reading package lists... Done
> Building dependency tree       
> Reading state information... Done
> The following packages were automatically installed and are no longer
> required:
>   apg cheese-common empathy-common gir1.2-gfbgraph-0.2 gnome-control-
> center-data gthumb-data
>   libclutter-1.0-common libcogl-common libglapi-mesa:i386 libgnome-
> autoar-gtk-0-0 libpst4
>   libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386 libxcb-
> sync1:i386 libxshmfence1:i386
>   libxss1:i386 qt5-qmake qtbase5-dev-tools totem-common
> Use 'sudo apt autoremove' to remove them.
> The following packages will be REMOVED:
>   caribou caribou-antler cheese empathy evolution evolution-plugins
> gir1.2-champlain-0.12
>   gir1.2-clutter-1.0 gir1.2-clutter-gst-3.0 gir1.2-cogl-1.0 gir1.2-
> coglpango-1.0
>   gir1.2-gtkchamplain-0.12 gir1.2-gtkclutter-1.0 gir1.2-totem-1.0
> gnome gnome-contacts
>   gnome-control-center gnome-core gnome-games gnome-maps gnome-
> nibbles gnome-shell-extension-weather
>   gnome-shell-extensions gnome-sushi gstreamer1.0-clutter-3.0 gthumb
> java-package libchamplain-0.12-0
>   libchamplain-gtk-0.12-0 libcheese-gtk25 libcheese8 libclutter-1.0-0 
> libclutter-gst-3.0-0
>   libclutter-gtk-1.0-0 libclutter-imcontext-0.1-0 libclutter-
> imcontext-0.1-bin
>   libcluttergesture-0.0.2-0 libcogl-pango20 libcogl-path20 libcogl20
> libevolution libgl1-mesa-dev
>   libgl1-mesa-glx libgl1-mesa-glx:i386 libglu1-mesa-dev libqt4-
> opengl-dev libqt5opengl5-dev libtotem0
>   lightsoff qtbase5-dev quadrapassel steam:i386 swell-foop task-
> gnome-desktop totem totem-plugins
> The following NEW packages will be installed:
>   libgl1-glvnd-nvidia-glx libgl1-glvnd-nvidia-glx:i386
> 0 upgraded, 2 newly installed, 56 to remove and 0 not upgraded
> 
> 
> This is all on Stretch with locally built packages in a local repo.
> 
> Is it because libgl1-glvnd-nvidia-glx declares a conflict with
> libgl1,
> which libgl1-mesa-glx provides perhaps?
> 
> Kind regards,
> Luca Boccassi

On the other hand, it could also be because some libraries from
libglvnd have a strict dependency on Mesa 17, which is not in backports
yet.

Kind regards,
Luca Boccassi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <http://lists.alioth.debian.org/pipermail/pkg-nvidia-devel/attachments/20170915/dd5ac623/attachment-0001.sig>


More information about the pkg-nvidia-devel mailing list