-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
Describe the bug
I hit an issue with building gamescope with meson 1.8.4 & 1.9.0 that the subprojects which got built as static .a file with meson 1.8.3 now appear to be build as dynamic .so files when using meson >= 1.8.4 and thus the resulting binary fails to run in regards to error while loading shared libraries
. Initial report is at gamescope ValveSoftware/gamescope#1959.
Build log with failing meson 1.9.0 (and also 1.8.4): gamescope-3.16.17-meson-1.9.0.log resulting in runtime failure:
$ gamescope
gamescope: error while loading shared libraries: libwlroots-0.18.so: cannot open shared object file: No such file or directory
Build log with working meson 1.8.3: gamescope-3.16.17-meson-1.8.3.log resulting in working binary:
$ gamescope
[gamescope] [Info] console: gamescope version 3.16.17
[...]
The immediate difference judging from the logs is that on latest versions (1.9.0/1.8.4) meson seems to build an .so instead of .a:
[...]x86_64-pc-linux-gnu-cc -Isubprojects/wlroots/libwlroots-0.18.so.p[...]
vs.
[...]x86_64-pc-linux-gnu-cc -Isubprojects/wlroots/libwlroots-0.18.a.p[...]
To Reproduce
Just switching meson versions is enough to reproduce, no further steps done. Working with 1.8.3 and showing different behaviour / failing once updating to 1.9.0 (or 1.8.4).
Expected behavior
Have a working endresult like with meson 1.8.3.
system parameters
- Is this a cross build or just a plain native build (for the same computer)? native
- what operating system: Exherbo Linux
- what Python version are you using: 3.12.11
- what
meson --version
1.9.0/1.8.4 - what
ninja --version
1.13.1