Skip to content

gvsbuild build gtk4 fails on Windows 11 using uv #1586

@bthorsted

Description

@bthorsted

I installed all the prerequisites as directed in the README, but instead of using pipx, I used

uv tool install gvsbuild
uv toll update-shell

After restarting the shell, I then tried building gtk4, which gave the output below.

gvsbuild build gtk4 output

~
➜ gvsbuild build gtk4
╭───────────────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────────────╮
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\types.py:348 in convert                                   │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
StopIteration

During handling of the above exception, another exception occurred:

╭───────────────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────────────╮
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\typer\core.py:195 in _main                                      │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:1828 in invoke                                    │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:1186 in make_context                              │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:1197 in parse_args                                │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:2416 in handle_parse_result                       │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:2349 in process_value                             │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:2337 in type_cast_value                           │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:2309 in convert                                   │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\types.py:90 in __call__                                   │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\types.py:354 in convert                                   │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\types.py:143 in fail                                      │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
BadParameter: <Configuration.debug_optimized: 'debug-optimized'> is not one of 'debug', 'release', 'debug-optimized'.

During handling of the above exception, another exception occurred:

╭───────────────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────────────╮
│ in _run_module_as_main:198                                                                                                           │
│ ╭───────────────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────────────╮ │
│ │   alter_argv = False                                                                                                             │ │
│ │         code = <code object <module> at 0x0000028BA04582C0, file "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\__main__.py", line 1> │ │
│ │ main_globals = {                                                                                                                 │ │
│ │                │   '__name__': '__main__',                                                                                       │ │
│ │                │   '__doc__': None,                                                                                              │ │
│ │                │   '__package__': '',                                                                                            │ │
│ │                │   '__loader__': <zipimporter object "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\">,                               │ │
│ │                │   '__spec__': ModuleSpec(name='__main__', loader=<zipimporter object                                            │ │
│ │                "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\">,                                                                     │ │
│ │                origin='C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__main__.py'),                                             │ │
│ │                │   '__annotations__': {},                                                                                        │ │
│ │                │   '__builtins__': <module 'builtins' (built-in)>,                                                               │ │
│ │                │   '__file__': 'C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__main__.py',                                     │ │
│ │                │   '__cached__': 'C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__pycache__\\__main__.cpython-313.pyc',         │ │
│ │                │   'sys': <module 'sys' (built-in)>,                                                                             │ │
│ │                │   ... +1                                                                                                        │ │
│ │                }                                                                                                                 │ │
│ │     mod_name = '__main__'                                                                                                        │ │
│ │     mod_spec = ModuleSpec(name='__main__', loader=<zipimporter object "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\">,              │ │
│ │                origin='C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__main__.py')                                              │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
│ in _run_code:88                                                                                                                      │
│ ╭───────────────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────────────╮ │
│ │       cached = 'C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__pycache__\\__main__.cpython-313.pyc'                            │ │
│ │         code = <code object <module> at 0x0000028BA04582C0, file "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\__main__.py", line 1> │ │
│ │        fname = 'C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__main__.py'                                                      │ │
│ │ init_globals = None                                                                                                              │ │
│ │       loader = <zipimporter object "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\">                                                  │ │
│ │     mod_name = '__main__'                                                                                                        │ │
│ │     mod_spec = ModuleSpec(name='__main__', loader=<zipimporter object "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\">,              │ │
│ │                origin='C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__main__.py')                                              │ │
│ │     pkg_name = ''                                                                                                                │ │
│ │  run_globals = {                                                                                                                 │ │
│ │                │   '__name__': '__main__',                                                                                       │ │
│ │                │   '__doc__': None,                                                                                              │ │
│ │                │   '__package__': '',                                                                                            │ │
│ │                │   '__loader__': <zipimporter object "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\">,                               │ │
│ │                │   '__spec__': ModuleSpec(name='__main__', loader=<zipimporter object                                            │ │
│ │                "C:\Users\XXXXXXX\.local\bin\gvsbuild.exe\">,                                                                     │ │
│ │                origin='C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__main__.py'),                                             │ │
│ │                │   '__annotations__': {},                                                                                        │ │
│ │                │   '__builtins__': <module 'builtins' (built-in)>,                                                               │ │
│ │                │   '__file__': 'C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__main__.py',                                     │ │
│ │                │   '__cached__': 'C:\\Users\\XXXXXXX\\.local\\bin\\gvsbuild.exe\\__pycache__\\__main__.cpython-313.pyc',         │ │
│ │                │   'sys': <module 'sys' (built-in)>,                                                                             │ │
│ │                │   ... +1                                                                                                        │ │
│ │                }                                                                                                                 │ │
│ │  script_name = None                                                                                                              │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
│                                                                                                                                      │
│ in <module>:10                                                                                                                       │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\gvsbuild\main.py:66 in run                                      │
│                                                                                                                                      │
│   63                                                                                                                                 │
│   64                                                                                                                                 │
│   65 def run():                                                                                                                      │
│ ❱ 66 │   app()                                                                                                                       │
│   67                                                                                                                                 │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\typer\main.py:340 in __call__                                   │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\typer\main.py:323 in __call__                                   │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:1442 in __call__                                  │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\typer\core.py:740 in main                                       │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\typer\core.py:216 in _main                                      │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\typer\rich_utils.py:693 in rich_format_error                    │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:724 in get_usage                                  │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:969 in get_usage                                  │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:1002 in format_usage                              │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:1012 in collect_usage_pieces                      │
│                                                                                                                                      │
│ C:\Users\XXXXXXX\AppData\Roaming\uv\tools\gvsbuild\Lib\site-packages\click\core.py:3104 in get_usage_pieces                          │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
TypeError: TyperArgument.make_metavar() takes 1 positional argument but 2 were given

I verified that gvsbuild is using python 3.13.3:

& "$(uv tool dir)/gvsbuild/Scripts/python.exe" --version
Python 3.13.3

I'm not sure what else I can do at this point. I also tried the following steps, which did not resolve the issue, either:

➜ uv tool install pipx
Resolved 7 packages in 232ms
Prepared 3 packages in 1.36s
Installed 7 packages in 139ms
 + argcomplete==3.6.2
 + click==8.2.0
 + colorama==0.4.6
 + packaging==25.0
 + pipx==1.7.1
 + platformdirs==4.3.8
 + userpath==1.9.2
Installed 1 executable: pipx.exe

~ took 2s
➜ uv tool run pipx install gvsbuild
⚠️  Overwriting file C:\Users\XXXXXXX\.local\bin\gvsbuild.exe with C:\Users\XXXXXXX\pipx\venvs\gvsbuild\Scripts\gvsbuild.exe
  installed package gvsbuild 2025.5.0, installed using Python 3.13.3
  These apps are now globally available
    - gvsbuild.exe
done! ✨ 🌟 ✨

~ took 25s
➜ gvsbuild build gtk4
╭───────────────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────────────╮
│ C:\Users\XXXXXXX\pipx\venvs\gvsbuild\Lib\site-packages\click\types.py:348 in convert                                                 │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
StopIteration

During handling of the above exception, another exception occurred:

╭───────────────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────────────╮
│ C:\Users\XXXXXXX\pipx\venvs\gvsbuild\Lib\site-packages\typer\core.py:195 in _main                                                    │
...
...
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
TypeError: TyperArgument.make_metavar() takes 1 positional argument but 2 were given

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions