msys2 / MINGW-packages

Package scripts for MinGW-w64 targets to build under MSYS2.
https://packages.msys2.org
BSD 3-Clause "New" or "Revised" License
2.31k stars 1.23k forks source link

Qt Creator need to be rebuilt after Qt 6's every major upgrade #22301

Closed wszqkzqk closed 1 month ago

wszqkzqk commented 1 month ago

Description / Steps to reproduce the issue

Qt Creator uses the private API of Qt 6, so it needs to be rebuilt after each Qt 6 upgrade.

Otherwise, if you run qtcreator it will fail because it unable to locate program entry point on dlls.

Also, our upstream, Arch Linux, is maintaining a list of packages that need to be rebuilt after Qt 6 upgrade. Some of them are also in MSYS2's repo, so we may reuse some part of this list.

At least, there are following packages need to be rebuilt:

Expected behavior

Rebuild, and Qt Creator works again.

Actual behavior

Unable to locate program entry point on dlls.

Verification

Windows Version

MSYS_NT-10.0-26100

MINGW environments affected

Are you willing to submit a PR?

No response

Biswa96 commented 1 month ago

CI shows which packages need to be rebuilt https://github.com/msys2/MINGW-packages/actions/runs/11492344868/job/31996151285?pr=22280#step:3:444

pyside6 update is in queue. The other 3 are in a pull request now.

wszqkzqk commented 1 month ago

CI shows which packages need to be rebuilt https://github.com/msys2/MINGW-packages/actions/runs/11492344868/job/31996151285?pr=22280#step:3:444

pyside6 update is in queue. The other 3 are in a pull request now.

Sorry, I just noticed.

Is it possible for us to automate this rebuild? Arch Linux has tools specifically for this situation.

Biswa96 commented 1 month ago

Which part need to be automated? CI is already showing which packages need to be rebuild. In the end, human touch is required to fix the build or runtime issue.

wszqkzqk commented 1 month ago

Which part need to be automated? CI is already showing which packages need to be rebuild. In the end, human touch is required to fix the build or runtime issue.

I mean to automatically issue a rebuild of these packages (additional manually maintained packages that need to be built) when Qt 6 is upgraded. The reason these packages need to be rebuilt is not soname changes (more like "runtime issue") so it seems that CI can't figure them out directly. This may help prevent maintainers from forgetting.

Biswa96 commented 1 month ago

The reason these packages need to be rebuilt is not soname changes (more like "runtime issue")

Both file name changes and API changes are checked in CI, see https://github.com/jeremyd2019/package-grokker

wszqkzqk commented 1 month ago

The reason these packages need to be rebuilt is not soname changes (more like "runtime issue")

Both file name changes and API changes are checked in CI, see https://github.com/jeremyd2019/package-grokker

OK, thanks.