miurahr / aqtinstall

aqt: Another (unofficial) Qt CLI Installer on multi-platforms
https://aqtinstall.readthedocs.io/en/latest/
MIT License
893 stars 83 forks source link

Fails to install Qt6 6.7.0 on Linux/Ubuntu #769

Closed MehdiChinoune closed 2 months ago

MehdiChinoune commented 3 months ago

Describe the bug Installing Qt6 6.7.0 (RC) succeeds on Windows and macOS but fails on Ubuntu

To Reproduce Steps to reproduce the behavior:

  1. install aqt using pip install aqtinstall
  2. run aqt with this command aqt install-qt linux desktop 6.7.0
  3. See error

Expected behavior It succeeds

aqt output

INFO    : aqtinstall(aqt) v3.1.12 on Python 3.10.13 [CPython GCC 11.4.0]
ERROR   : The packages ['qt_base'] were not found while parsing XML of package information!
==============================Suggested follow-up:==============================
* Please use 'aqt list-qt linux desktop --arch 6.7.0' to show architectures available.

Desktop (please complete the following information):

MehdiChinoune commented 3 months ago

Executing with arch succeeds to download, but fails to install

aqt install-qt linux desktop 6.7.0 linux_gcc_64
...
INFO    : Finished installation of qtbase-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z in 21.84789808
ERROR   : Updater caused an IO error: [Errno 2] No such file or directory: '/home/ucer/Qt/6.7.0/linux_gcc_64/mkspecs/qconfig.pri'

because that file is in gcc_64 not in linux_gcc_64

miurahr commented 3 months ago

because that file is in gcc_64 not in linux_gcc_64

Uhm, find_installed_desktop_qt_dir function that returns the directory checks existence of bin/qmake command. https://github.com/miurahr/aqtinstall/blob/master/aqt/metadata.py#L470

but update function https://github.com/miurahr/aqtinstall/blob/master/aqt/updater.py#L269 does not take a prefix from the find_installed_desktop_qt_dir function. https://github.com/miurahr/aqtinstall/blob/master/aqt/updater.py#L288-L289

This may be one of causes.

miurahr commented 3 months ago

because that file is in gcc_64 not in linux_gcc_64

https://github.com/miurahr/aqtinstall/blob/master/aqt/updater.py#L288-L289

arch_dir is found by using QtRepoProperty.get_arch_dir_name

        arch_dir = QtRepoProperty.get_arch_dir_name(os_name, arch, version)

that just return arch variable string when host is linux. I can check arch is linux_gcc_64 and then return gcc_64. We can also look an existence of qmake file here for double check.

firewave commented 3 months ago

Qt 6.7.0 was released today and I just hit this issue via the jurplel/install-qt-action GitHub action.

timangus commented 3 months ago

Also experiencing this, via the aforementioned GHA.

rectalogic commented 3 months ago

Fixed in https://github.com/miurahr/aqtinstall/pull/766

> aqt install-qt linux desktop 6.7.0 -O /tmp/Qt
INFO    : aqtinstall(aqt) v3.1.13.dev3 on Python 3.11.8 [CPython Clang 15.0.0 (clang-1500.1.0.2.5)]
INFO    : Downloading qttools...
INFO    : Downloading qtsvg...
INFO    : Downloading qtdeclarative...
INFO    : Downloading qtbase...
INFO    : Redirected: qt.mirror.constant.com
INFO    : Redirected: qt.mirror.constant.com
INFO    : Redirected: qt.mirror.constant.com
INFO    : Redirected: qt.mirror.constant.com
INFO    : Finished installation of qtsvg-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z in 1.09454683
INFO    : Downloading qttranslations...
INFO    : Redirected: qt.mirror.constant.com
INFO    : Finished installation of qttranslations-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z in 1.26653488
INFO    : Downloading qtwayland...
INFO    : Redirected: qt.mirror.constant.com
INFO    : Finished installation of qtwayland-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z in 1.11947813
INFO    : Downloading icu...
INFO    : Finished installation of qtbase-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z in 4.32134483
INFO    : Redirected: qt.mirror.constant.com
INFO    : Finished installation of qttools-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z in 5.52297321
INFO    : Finished installation of icu-linux-Rhel8.6-x86_64.7z in 2.08118250
INFO    : Finished installation of qtdeclarative-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z in 15.88939871
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6LabsWavefrontMesh.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2FusionStyleImpl.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Platform.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6LabsFolderListModel.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlCore.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Concurrent.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6LabsQmlModels.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlWorkerScript.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Designer.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2Impl.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlIntegration.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Xml.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2Universal.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickDialogs2QuickImpl.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6SvgWidgets.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6LabsAnimation.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6UiTools.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickDialogs2Utils.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickTest.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickDialogs2.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlXmlListModel.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Help.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlBuiltins.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6OpenGLWidgets.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6UiPlugin.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Quick.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2Imagine.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6LabsSharedImage.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Linguist.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6PrintSupport.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2Fusion.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2BasicStyleImpl.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2ImagineStyleImpl.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickWidgets.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Svg.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickTemplates2.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlNetwork.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2Basic.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Core.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Gui.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2MaterialStyleImpl.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2Material.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6OpenGL.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlLocalStorage.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6LabsSettings.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Test.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Network.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Sql.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickLayouts.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6DBus.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlCompiler.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Widgets.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6Qml.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6WaylandClient.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QuickControls2UniversalStyleImpl.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/pkgconfig/Qt6QmlModels.pc
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlLocalStorage.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6LabsSharedImage.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlLS.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6WaylandClient.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Concurrent.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickDialogs2QuickImpl.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickTest.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6OpenGLWidgets.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6InputSupport.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6DBus.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Core.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2Material.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2ImagineStyleImpl.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6OpenGL.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Svg.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickDialogs2Utils.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6EglFSDeviceIntegration.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6FbSupport.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6WaylandEglClientHwIntegration.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlModels.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Qml.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6LabsFolderListModel.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6EglFsKmsSupport.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickWidgets.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlWorkerScript.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Network.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6LabsSettings.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6PrintSupport.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlDebug.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2Universal.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6UiTools.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Help.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Quick.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6KmsSupport.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2UniversalStyleImpl.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Test.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Gui.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Widgets.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlTypeRegistrar.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6SvgWidgets.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickDialogs2.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2FusionStyleImpl.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Sql.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickTestUtils.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6ExampleIcons.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickEffects.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControlsTestUtils.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6DeviceDiscoverySupport.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6LabsQmlModels.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Xml.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickParticles.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlDom.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlBuiltins.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlCore.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlCompiler.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6LabsWavefrontMesh.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickShapes.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6Designer.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6PacketProtocol.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6LabsAnimation.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2Impl.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlToolingSettings.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2Imagine.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlXmlListModel.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2MaterialStyleImpl.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6WlShellIntegration.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6XcbQpa.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QmlNetwork.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2Fusion.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2Basic.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickTemplates2.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickControls2BasicStyleImpl.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6DesignerComponents.prl
INFO    : Patching /tmp/Qt/6.7.0/gcc_64/lib/libQt6QuickLayouts.prl
INFO    : Finished installation
INFO    : Time elapsed: 17.26770825 second
emericg commented 3 months ago

Awesome thanks!

silverqx commented 2 months ago

When do you plan to merge #766 still can't install aqt install-qt --external 7z --outputdir /opt/Qt linux desktop 6.7.0 linux_gcc_64

MehdiChinoune commented 2 months ago

766 was merged, waiting for a new release.

silverqx commented 2 months ago

I can confirm that it solved the problem, I tried the master branch and aqt install-qt --external 7z --outputdir /home/<username>/tmp/Qt linux desktop 6.7.0 linux_gcc_64 succeed.

timangus commented 2 months ago

I haven't really been following this in detail, has installing wasm been affected by this fix?

tim@abraxas:~$ aqt list-qt linux desktop --arch 6.6.3
gcc_64 wasm_singlethread wasm_multithread
tim@abraxas:~$ aqt list-qt linux desktop --arch 6.7.0
linux_gcc_64

Is there a new way of selecting wasm? What am I missing?

silverqx commented 2 months ago

Build/install aqt master, there its fixed:

python3 -m pip install --upgrade pip
git clone git@github.com:miurahr/aqtinstall.git
cd aqtinstall
python3 -m pip install ./ --user
timangus commented 2 months ago

Yeah I already have the new aqt release and it installs desktop 6.7.0 successfully; it's installing the wasm version that I'm having trouble with. WebAssembly is not listed for 6.7 but it is for 6.6.

silverqx commented 2 months ago

So I recommend creating a new issue for this, this is closed anyway and it looks like different problem.

timangus commented 2 months ago

So I recommend creating a new issue for this, this is closed anyway and it looks like different problem.

779