On Wed, 17 Oct 2012, Erich E. Hoover wrote:
I just upgraded to 12.04, until they fix the "32-bit headers problem" you'll have to manually create the symbolic links for the "-dev" package behavior:
I ran into pretty much the same set of problems with Wine on Debian Testing. However some development packages are already multiarch-compatible so I installed them and created a bit fewer symbolic links than you. In particular I was able to install the following i386 development packages:
libasound2-dev:i386 libcapi20-dev:i386 libjpeg8-dev:i386 liblcms1-dev:i386 libldap2-dev:i386 libmpg123-dev:i386 libopenal-dev:i386 libtinfo-dev:i386 (needed for ncurses) libv4l-dev:i386 libx11-dev:i386 libxau-dev:i386 libxcb1-dev:i386 libxinerama-dev:i386 libxml2-dev:i386 libxrender-dev:i386 zlib1g-dev:i386
I also made a list of the packages that need to be fixed in order for work on Wine to be possible without so much complication, and made sure we have bugs to track the status of each of them. I am sure the maintainers would appreciate some help so here are the multiarch fixes needed for Wine development:
* These all seem to be fixable trivially. Double-check and submit a patch? The Debian freeze might block your efforts though :-( libfontconfig1-dev - #677885 libgl1-mesa-dev - #678040, #689088 libglu1-mesa-dev - #678040, #689089 libgnutls-dev - #678070 libosmesa6-dev - #678040 libxcomposite-dev - #689082 libxfixes-dev - #677657 libxrandr-dev - #678895 libxvmc1 - #640499 (well the work seems to have been done in any case) libxxf86vm-dev - #678898
* These have yet to be analyzed to figure out if there are obstacles or not. libcups2-dev - #689084 libgphoto2-2-dev - #689083 libgstreamer0.10-dev - #689090 libnss-mdns - #686984 libpng12-dev - #689092, #673642 libsane-dev - #689073, #672495 libxi-dev - #689068
* The freetype-config tool is the point of contention. libfreetype6-dev - #666761
* The point of contention here is xslt-config. This is probably somewhat similar to the freetype-config issue. libxslt1-dev - #689091
* These have platform-dependent headers which makes fixing much harder. Either the headers can be made platform-independent upstream (assuming it even makes sense), or it will have to wait for the build toolchain to be updated: https://wiki.ubuntu.com/MultiarchSpec#Co-installable_-dev_packages
libdbus-1-dev - #689071 libncurses5-dev / libncursesw5-dev - #689131, #646761, #646977 libssl-dev - #689093, #638137 libtiff4-dev - #689085
* The maintainer says that any application that still uses HAL is buggy and that he will not fix this package :-( libhal1, libhal1-dev - #638839
* Broken by other packages. See above. libxcursor-dev - broken by libxfixes-dev libgl1-nvidia-glx - broken by libxvmc1
* These are not needed by Wine but I need them to compile other stuff so I'm including them here. For most of these the GObject introspection data causes trouble. libatk1.0-dev - #689124 (to be checked) libcairo2-dev - #689122 (to be checked) libgdk-pixbuf2.0-dev - #689125 (introspection) libglib2.0-dev - #683593 (likely introspection) libgtk2.0-dev - #689097 (introspection) libpango1.0-dev - #683592 (trivial)
Here are some references for anyone not yet familiar with multiarch on Debian:
* Multiarch HOWTO for users http://wiki.debian.org/Multiarch/HOWTO
* Multiarch package manager specification https://wiki.ubuntu.com/MultiarchSpec
* All the links http://wiki.debian.org/Multiarch