Cross building GLib tests for Windows fails with '"libgio-2.0-0.dll" failed to initialize, aborting'
- Dominant language
- Python
- Stars
- 6.6k
- Forks
- 1.9k
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 33
Description
**Describe the bug**
As reported at https://gitlab.gnome.org/GNOME/glib/-/issues/2573, a cross build for Windows may use potentially inappropriate DLLs when running cross compiled applications.
In the case described, a libglib-2.0-0.dll from a system path was used because corresponding system paths were first contained in the WINEPATH environment variable.
**To Reproduce**
See https://gitlab.gnome.org/GNOME/glib/-/issues/2573
**Expected behavior**
The WINEPATH environment variable must contain the paths to the build directory first and then the system paths.
**system parameters**
* cross build for Windows with gcc
* openSUSE 15.2
* python 3.6.12
* meason version 0.56.2
* ninja version 1.10.2
Contributor guide
Research direction
Start by reproducing the cross build for Windows described in the linked GLib issue and inspect how Meson constructs WINEPATH for test execution. Confirm that build-directory paths precede system paths, then rerun the GLib tests to verify that the intended DLLs are selected.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100