libgl1-mesa-dev installs a broken link in /usr/lib

Bug #505359 reported by Doug McMahon
26
This bug affects 5 people
Affects Status Importance Assigned to Milestone
mesa (Ubuntu)
Fix Released
High
Alberto Milone

Bug Description

libgl1-mesa-glx installs libGL.so.1 and libGL.so.1.2 to /usr/lib/mesa but the link libgl1-mesa-dev installs to /usr/lib is broken

Came up while doing rebuilds of vlc1.1 and 1.0.4 which now fail on -lGL

Removing and creating a new link resolved the vlc builds and allowed vlc to use opengl output
(though I'm not sure what ultimately is intended here
The gl.pc still shows /usr/lib

ProblemType: Bug
Architecture: i386
Date: Sat Jan 9 21:34:15 2010
DistroRelease: Ubuntu 10.04
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Alpha i386 (20100104)
Lsusb:
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 001 Device 003: ID 06a3:8000 Saitek PLC Gamers' Keyboard
 Bus 001 Device 002: ID 045e:00b9 Microsoft Corp. Wireless Optical Mouse 3.0
 Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: Dell Computer Corporation Dimension 8200
NonfreeKernelModules: nvidia
Package: libgl1-mesa-dev 7.7-0ubuntu1 [modified: usr/lib/pkgconfig/gl.pc]
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.32-9-generic root=UUID=edecaa8c-f3f0-4b87-b077-5b4d8983fae5 ro quiet splash
ProcEnviron:
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.32-9.13-generic
RelatedPackageVersions:
 xserver-xorg 1:7.5+1ubuntu1
 libgl1-mesa-glx 7.7-0ubuntu1
 libdrm2 2.4.17-0ubuntu1
 xserver-xorg-video-intel 2:2.9.1-1ubuntu1
 xserver-xorg-video-ati 1:6.12.99+git20091125.0061c4db-0ubuntu1
SourcePackage: mesa
Tags: lucid
Uname: Linux 2.6.32-9-generic i686
dmi.bios.date: 07/18/2002
dmi.bios.vendor: Dell Computer Corporation
dmi.bios.version: A07
dmi.board.name: Dimension 8200
dmi.board.vendor: Dell Computer Corporation
dmi.chassis.type: 6
dmi.chassis.vendor: Dell Computer Corporation
dmi.modalias: dmi:bvnDellComputerCorporation:bvrA07:bd07/18/2002:svnDellComputerCorporation:pnDimension8200:pvr:rvnDellComputerCorporation:rnDimension8200:rvr:cvnDellComputerCorporation:ct6:cvr:
dmi.product.name: Dimension 8200
dmi.sys.vendor: Dell Computer Corporation
fglrx: Not loaded
system:
 distro: Ubuntu
 architecture: i686kernel: 2.6.32-9-generic

Revision history for this message
Doug McMahon (mc3man) wrote :
Revision history for this message
Doug McMahon (mc3man) wrote :

See it's been fixed in new libgl1-mesa-dev package

Revision history for this message
BlCa (blca) wrote :

I doubt it's fixed as building anything that depends on libgl1-mesa-glx 7.7-0ubuntu3 still fails when looking for libGL.so.

Revision history for this message
Doug McMahon (mc3man) wrote :
Download full text (3.3 KiB)

Well yes there still can be an issue when building sources off of.

A series of builds of vlc 1.0.4, vlc 1.1-git and mplayer showed
vlc 1.1 is fine as things stand

Both vlc 1.0.4 and mplayer, while finding the headers, will fail to link to libGL.so

The fix there (as things stand) is to create a new link for the build(s), after which it can be deleted

sudo ln -s /usr/lib/mesa/libGL.so.1 /usr/lib/libGL.so

What may continue to be an issue is the update to libglu1-mesa-dev which moved those libs inside of /usr/lib/mesa

for the moment here have reverted libglu1-mesa and libglu1-mesa-dev back so the libs are in /usr/lib

All the builds now work correctly with opengl output

noting that these are make installs, (checkinstalls), not package builds, in a package build of vlc 1.0.4 the libGLU.so issue was irrelevant, libGLU.so isn't linked

As currently set up (updated libgl1-mesa-dev, reverted libglu1-mesa-dev

 doug@doug-desktop:~$ ldd /usr/local/lib/vlc/video_output/libopengl_plugin.so
 linux-gate.so.1 => (0x00fa1000)
 libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00b0f000)
 libGL.so.1 => /usr/lib/nvidia-current/libGL.so.1 (0x001c7000)
 libGLU.so.1 => /usr/lib/libGLU.so.1 (0x00137000)
 libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x005d0000)
 libvlccore.so.2 => /usr/local/lib/libvlccore.so.2 (0x00918000)
 libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00b35000)
 /lib/ld-linux.so.2 (0x00e62000)
 libGLcore.so.1 => /usr/lib/nvidia-current/libGLcore.so.1 (0x00fa2000)
 libnvidia-tls.so.1 => /usr/lib/nvidia-current/tls/libnvidia-tls.so.1 (0x00110000)
 libXext.so.6 => /usr/lib/libXext.so.6 (0x00112000)
 libX11.so.6 => /usr/lib/libX11.so.6 (0x006ca000)
 libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00da1000)
 libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00287000)
 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00f0e000)
 libhal.so.1 => /usr/lib/libhal.so.1 (0x00122000)
 libdbus-1.so.3 => /lib/libdbus-1.so.3 (0x0037a000)
 librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x001a8000)
 libxcb.so.1 => /usr/lib/libxcb.so.1 (0x003b3000)
 libXau.so.6 => /usr/lib/libXau.so.6 (0x001b1000)
 libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x008f5000)

With the libglu1 updated, but a deb package build instead

doug@doug-desktop:~$ ldd /usr/local/lib/vlc/video_output/libopengl_plugin.so
 linux-gate.so.1 => (0x00fa1000)
 libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00b0f000)
 libGL.so.1 => /usr/lib/nvidia-current/libGL.so.1 (0x001c7000)
 libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x005d0000)
 libvlccore.so.2 => /usr/local/lib/libvlccore.so.2 (0x00918000)
 libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00b35000)
 /lib/ld-linux.so.2 (0x00e62000)
 libGLcore.so.1 => /usr/lib/nvidia-current/libGLcore.so.1 (0x00fa2000)
 libnvidia-tls.so.1 => /usr/lib/nvidia-current/tls/libnvidia-tls.so.1 (0x00110000)
 libXext.so.6 => /usr/lib/libXext.so.6 (0x00112000)
 libX11.so.6 => /usr/lib/libX11.so.6 (0x006ca000)
 libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00da1000)
 libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00287000)
 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00f0e000)
 libhal.so.1 => /usr/lib/libhal.so.1 (0x00122000)
 libdbus-1.so.3 => /lib/libdbus-1.so.3 (0x0037a000)
 lib...

Read more...

Changed in mesa (Ubuntu):
status: New → In Progress
importance: Undecided → High
assignee: nobody → Alberto Milone (albertomilone)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mesa - 7.7-0ubuntu4

---------------
mesa (7.7-0ubuntu4) lucid; urgency=low

  * debian/libgl1-mesa-dev.links:
    - Add link to /usr/lib/mesa/libGL.so in /usr/lib so as not to break
      software that build against mesa (LP: #505359).
  * debian/libgl1-mesa-glx.{postinst|prerm}:
    - Use alternatives so that /usr/lib/GL is a slave which points to
      /usr/lib/mesa.
  * debian/libglu-mesa-dev.links:
    - Add link to /usr/lib/mesa/libGLU.so in /usr/lib/libGLU.so.
  * debian/rules:
    - Install /usr/lib/mesa/ld.so.conf
    - Create an empty directory (for alternatives) just to be sure:
      /usr/lib/xorg/x11-extra-modules.
 -- Alberto Milone <email address hidden> Mon, 11 Jan 2010 16:49:14 +0100

Changed in mesa (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Johan Van de Wauw (johanvdw) wrote :

I believe this bug is not completely fixed, the versioned libraries should go into /usr/lib as well.

Revision history for this message
Alberto Milone (albertomilone) wrote :

That's not a bug. Ldconfig knows where to find those libraries.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.