64 bit dev packages should include 32 bit .so library file
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
mesa (Ubuntu) |
Won't Fix
|
Medium
|
Unassigned |
Bug Description
64 bit dev packages contain a 64 bit version of the library file(s) that they provide for linking but not a 32 bit version of the library file(s). In previous versions of Ubuntu, however, it was possible to compile 32 bit applications using the 64 bit dev packages in by installing ia32-libs, which contained the required 32 bit library files.
In the move to multiarch, 32 bit library files are being removed from ia32-libs. Multiarch (I assume) aims to keep the architectures separate, so the generally intended solution is to install the i386 version of the dev package when compiling 32 bit applications, ie side-by-side with the 64 bit dev package.
However, some 64 bit development packages conflict with their 32 bit equivalent. This creates a regressive situation where it is impossible to install them side-by-side - you are forced to either install the 32 bit package, which breaks 64 bit compilations, or the 64 bit package, which breaks 32 bit compilations.
An example is libglu1-mesa-dev, which conflicts with libglu1-
The two workarounds are:
1. Manually re-install the required i386 dev packages before compiling 32 bit apps, and then manually re-install the required amd64 dev packages before compiling 64 bit apps. This is a real pain.
2. Install the i386 binary package (eg libglu1-mesa:i386) and the amd64 dev package (eg libglu1-mesa-dev), and manually create symlinks for the i386 libXYZ.so package (eg sudo ln -s /usr/lib/
ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: libglu1-mesa-dev 8.0.1-0ubuntu2
ProcVersionSign
Uname: Linux 3.2.0-18-generic x86_64
.tmp.unity.
ApportVersion: 1.94.1-0ubuntu1
Architecture: amd64
CompizPlugins: [core,bailer,
CompositorRunning: compiz
Date: Thu Mar 8 10:20:54 2012
DistUpgraded: Log time: 2012-02-26 08:25:08.500725
DistroCodename: precise
DistroVariant: ubuntu
DkmsStatus:
virtualbox-guest, 4.1.8, 3.2.0-12-generic, x86_64: installed
virtualbox-guest, 4.1.8, 3.2.0-14-generic, x86_64: installed
virtualbox-guest, 4.1.8, 3.2.0-17-generic, x86_64: installed
virtualbox-guest, 4.1.8, 3.2.0-18-generic, x86_64: installed
ExtraDebuggingI
GraphicsCard: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter [80ee:beef] (prog-if 00 [VGA controller])
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha amd64 (20120201.1)
Lsusb:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 80ee:0021 VirtualBox USB Tablet
MachineType: innotek GmbH VirtualBox
ProcEnviron:
LANGUAGE=en_AU:en
TERM=xterm
LANG=en_AU.UTF-8
SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=
Renderer: Software
SourcePackage: mesa
UpgradeStatus: Upgraded to precise on 2012-02-26 (11 days ago)
dmi.bios.date: 12/01/2006
dmi.bios.vendor: innotek GmbH
dmi.bios.version: VirtualBox
dmi.modalias: dmi:bvninnotekG
dmi.product.name: VirtualBox
dmi.product.
dmi.sys.vendor: innotek GmbH
version.compiz: compiz 1:0.9.7.
version.ia32-libs: ia32-libs N/A
version.libdrm2: libdrm2 2.4.30-1ubuntu1
version.
version.
version.
version.
version.
version.
version.
version.
the conflicts just need to be fixed