[SRU] Possible missing dependencies of libsdl2-dev in Jammy
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
libsdl2 (Debian) |
Fix Released
|
Unknown
|
|||
libsdl2 (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Jammy |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
* People using the library to build custom applications
[Test Plan]
* try to build Simutrans-Extended app from github code
[Where problems could occur]
* Without some dependencies being installed (libdecor-0-dev libdrm-dev libgbm-dev libxfixes-dev), the build will fail
[ other info ]
UBUNTU RELEASE
Ubuntu 22.04 LTS (Kubuntu but I think that's irrelevant)
PACKAGES AND VERSIONS
libsdl2-dev 2.0.20+dfsg-2build1
libsdl2-2.0-0 2.0.20+dfsg-2build1
STEPS TO REPRODUCE
(This is how I discovered the issue, but there is probably a much more minimal reproduction case)
1. Download the Simutrans-Extended repo: https:/
2. Download the dependencies, at a minimum libsdl2-dev
3. Following the instructions there for building with autotools
EXPECTED RESULTS
Simutrans-Extended compiles correctly, as it did on Focal Fossa.
ACTUAL RESULTS
When I tried to build it on Jammy Jellyfish, the build failed with the following errors from the linker:
/usr/bin/ld: cannot find -ldrm: No such file or directory
/usr/bin/ld: cannot find -lgbm: No such file or directory
/usr/bin/ld: cannot find -ldecor-0: No such file or directory
Installing the libdrm-dev, libgbm-dev, and libdecor-0-dev packages solved that problem. But I wonder whether it might be a packaging bug. I follow Simutrans-Extended development quite closely and we have not intentionally introduced dependencies on those packages; I think they have been brought in by SDL2.
If a program using sdl2-dev used to be able to compile without those packages, but now requires them, it seems to me that they are now dependencies of sdl2-dev. Or at least be 'suggests'. But I am not an expert on this.
COMMENTS
Those libraries are not direct dependencies of Simutrans. However, Ubuntu's sdl2-0-0 package has added dependencies on libgbm1, libdrm2, and libdecor-0-0.
Compare the Focal dependencies.... https:/
......with the Jammy dependencies: https:/
The Jammy libsdl2-dev package does **not** list dependencies on the appropriate development packages: https:/
I notice that SDL's own build guide lists those packages as dependencies for building SDL2 itself on Focal Fossa: https:/
But that change was made in February 2021 so it affects Ubuntu's version of SDL2 in Jammy, not Focal: https:/
I initially asked about this on AskUbuntu and a comment there confirmed that the required .so files are in (for example) libgbm-dev, not lib-gbm1: https:/
I might file a bug report upstream with Debian if I can figure out their bugtracking system.
description: | updated |
Changed in libsdl2 (Debian): | |
status: | Unknown → New |
Changed in libsdl2 (Ubuntu Jammy): | |
status: | New → In Progress |
description: | updated |
summary: |
- Possible missing dependencies of libsdl2-dev in Jammy + [SRU] Possible missing dependencies of libsdl2-dev in Jammy |
Changed in libsdl2 (Debian): | |
status: | New → Fix Released |
Thank you for the bug report. Indeed those libraries are listed in the .pc requirements and should be depends, it also has been reported to Debian on https:/ /bugs.debian. org/cgi- bin/bugreport. cgi?bug= 1012088