Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gdk-pixbuf fails to compile in CI #1436

Open
nazar-pc opened this issue Sep 12, 2024 · 7 comments
Open

gdk-pixbuf fails to compile in CI #1436

nazar-pc opened this issue Sep 12, 2024 · 7 comments

Comments

@nazar-pc
Copy link

nazar-pc commented Sep 12, 2024

Looks like the latest version was pulled in my project in CI and it now doesn't compile:

Found ninja-1.12.1 at C:\gtk-build\tools\ninja-1.12.1\ninja.EXE
ninja: fatal: ReadFile: The handle is invalid.
[1/156] Generating glib marshaller header gdk-pixbuf/gdk-pixbuf-marshal_h

FAILED: gdk-pixbuf/gdk-pixbuf-marshal.h 

"C:\Program" "Files (x86)/pipx/venvs/gvsbuild/Scripts/python.exe" "C:/gtk-build/gtk/x64/release/bin/../bin/glib-genmarshal" "--quiet" "--prefix" "_gdk_pixbuf_marshal" "--output" "gdk-pixbuf/gdk-pixbuf-marshal.h" "--header" "../gdk-pixbuf/gdk-pixbuf-marshal.list" "--pragma-once"
CreateProcess failed: The system cannot find the file specified.

Looking at python path, it doesn't seem to be handling white spaces correctly.

CI logs: https://github.com/autonomys/space-acres/actions/runs/10834949725/job/30065354680?pr=294#step:6:16918

@nazar-pc
Copy link
Author

2024.8.1 works fine, this is a regression in 2024.9.0

@nazar-pc
Copy link
Author

2024.10.0 is still broken the same way, here is CI run: https://github.com/autonomys/space-acres/actions/runs/11266017698/job/31328812842

@nazar-pc
Copy link
Author

Probably related to #1378

@danyeaw
Copy link
Member

danyeaw commented Oct 11, 2024

Hi @nazar-pc, would you like to create a minimum producible CI workflow so that we can try to reproduce this? The main differences that I see compared to our CI workflow that does pass is:

  1. Python 3.9 vs. 3.12
  2. We are using --ninja-opts -j2 since it is common for the CI to run out of memory

@nazar-pc
Copy link
Author

The workflow is as simple as it gets:

name: Release

on:
  workflow_dispatch:

jobs:
  release:
    runs-on: windows-2022

    steps:
      - name: Install GTK4 (Windows)
        run: |
          pipx install gvsbuild
          gvsbuild build gtk4 librsvg

Here is the result of it: https://github.com/autonomys/space-acres/actions/runs/11284587468/job/31386012839

@danyeaw
Copy link
Member

danyeaw commented Oct 19, 2024

Hi @nazar-pc, I am able to reproduce this. It is because of the space in the path to pipx.

An alternative that works is:

      - name: Install GTK4 (Windows)
        run: |
          py -m venv .venv
          .\.venv\Scripts\activate.ps1
          py -m pip install gvsbuild
          gvsbuild build gtk4 librsvg

This is either an upstream issue with Meson or Ninja. I'll try to narrow it down and get it fixed.

@nazar-pc
Copy link
Author

Yeah, spaces on Windows are a special kind of pain: https://github.com/autonomys/subspace/blob/1755b51f545b27be006e5f10ccfc4123b0efbb5b/.github/workflows/snapshot-build.yml#L219-L220

Thanks for looking into it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants