Skip to content

build regression of gamescope project when building with meson >= 1.8.4 #15006

@tgurr

Description

@tgurr

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions