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

Windows Qt6 builds based on vcpkg #57413

Closed
wants to merge 25 commits into from
Closed

Conversation

m-kuhn
Copy link
Member

@m-kuhn m-kuhn commented May 13, 2024

Description

Refs qgis/QGIS-Enhancement-Proposals#292

This adds windows builds with Qt6, based on vcpkg dependencies.

The features WITH_BINDINGS, WITH_3D and WITH_GUI are supported and appropriately enable or disable building the required dependencies.

Python support is consumed from https://github.com/open-vcpkg/python-registry/ . This is currently focused on shipping python dependencies that contain native code (dll's). Other dependencies can be installed using pip.

It is currently based on Qt 6.7.0.

Various Qt6 compatibility patches have been ported from #56980 and #56841 (QGIS code is now wchar / unicode aware for Qt6, external dependencies are patched to make them build).

TODO:

  • Create an SDK to make local development easier
  • Expand the developer documentation to make it easy to get started with local windows development
  • Unvendor at least one "external" dependency into an overlay port, this will reduce build time and make it clear which version of external dependencies we want and what patches we added on top.
  • Install psycopg2 (and other python dependencies that should be shipped)
  • Check why some exes are installed in top level instead of bin

More ideas:

  • Eventually use X_VCPKG_APPLOCAL_DEPS_INSTALL instead of blindly copying all .dll's, probably in a followup PR

@github-actions github-actions bot added this to the 3.38.0 milestone May 13, 2024
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

Successfully merging this pull request may close these issues.

1 participant