include files conflict with i386 version: split dev packages
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
libsdl1.2 (Debian) |
Fix Released
|
Unknown
|
|||
libsdl1.2 (Ubuntu) |
Triaged
|
Wishlist
|
Unassigned |
Bug Description
I discovered this with libsdl1.2-dev, but apply to many other -dev packages.
Details:
Dev packages mainly deliver:
0) /usr/bin/* # optional library tool
1) /usr/include/*.h # headers files
2) /usr/lib/
3) /usr/lib/
4) /usr/lib/
5) /usr/share/aclocal # other tools and manual files
/usr/
/usr/share/man
The i386 version deliver the library and pkg-config in /usr/lib/
Many packages and its corresponding i386 packages are marked conflict each other, as both contain the same include, tools and manual files. This forbid install both packages at the same time, and so it is impossible generate for both target 64 and 32 bit.
As the .a compile library itself for 64 and 32 bit are installed in different paths, make sense split dev packages in three packages:
A) common part to both 32 and 64 bit
B) compile time library for 64 bit
C) compile time library for 32 bit
this let install any combination of packages and generate for both 32 and 64 bit at the same time.
I tryed to manually copy .a files in the right place and both generation work
ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: libsdl1.2-dev:i386 (not installed)
ProcVersionSign
Uname: Linux 5.0.0-27-generic x86_64
ApportVersion: 2.20.9-0ubuntu7.7
Architecture: amd64
CurrentDesktop: MATE
Date: Sat Sep 7 15:10:16 2019
InstallationDate: Installed on 2016-12-01 (1010 days ago)
InstallationMedia: Ubuntu 16.04.1 LTS "Xenial Xerus" - Release amd64 (20160719)
SourcePackage: libsdl1.2
UpgradeStatus: Upgraded to bionic on 2018-09-23 (348 days ago)
Changed in libsdl1.2 (Ubuntu): | |
status: | New → Confirmed |
importance: | Undecided → Wishlist |
Changed in libsdl1.2 (Debian): | |
status: | Unknown → New |
Changed in libsdl1.2 (Ubuntu): | |
status: | Confirmed → Triaged |
Changed in libsdl1.2 (Debian): | |
status: | Unknown → New |
Changed in libsdl1.2 (Debian): | |
status: | New → Confirmed |
Changed in libsdl1.2 (Debian): | |
status: | Confirmed → Fix Released |
Hi Efa,
I have triaged this bug yesterday but wanted to add some words to explain.
What you ask for to me seems like you want more multiarch [1] implemented in libsdl (and others).
That is in itself no bad request, but there are a few constraints to that.
- The release target surely would be a future release (you filed that bug against bionic, and I'd
want in no way set wrong expectations). Even if things are changed that will only happen in
a future release as it would not qualify for an SRU.
- for the particular case - libsdl1.2 was dropped out of main (as there is libsdl2, but more so
things migrated away from sdl to gtk). Therefore I doubt this gets ever very important for
Ubuntu overall.
- For changes like that it is highly unlikely that we derive from Debian as the maintenance of
this as a delta is a lot of effort. We usually would implement and submit it to Debian (if it
is important to Ubuntu) or just ask Debian what they think about it (so that they can implement
it if they want). So on this case you might file a bug in Debian and let us know about the bug
number for tracking.
I can see that this case in general (not for libsdl in particular) becomes slightly more important with the dropping of i386 installation media. But in many cases instead of multiarch for combined 32/64 usage on one machine I have seen containers (e.g. [3]) as the superior solution. While multiarch is nice, containers let you run all on the same machine with the benefit of both environments not affecting each other in any way.
P.S. I have subscribed Steve in case he wants to share any of his much deeper multiarch knowledge to this case.
[1]: https:/ /wiki.debian. org/Multiarch/ Implementation /wiki.ubuntu. com/StableRelea seUpdates /stgraber. org/2016/ 03/11/lxd- 2-0-blog- post-series- 012/
[2]: https:/
[3]: https:/