Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

How do you install a specific version of Qt with the command line installer?



  • If I run the GUI version of the installer, it is easy to install just Qt 5.12.10. After it is installed, if I do ./MaintenanceTool li, I can get the list of installed packages which is:

    Id: qt.license.lgpl
    	Display name: Qt License LGPL
    	Version: 1.0.2
    Id: qt.tools.ninja
    	Display name: Ninja 1.10.0
    	Version: 1.10.0-202005270934
    Id: qt.tools.qtcreator
    	Display name: Qt Creator 4.14.0
    	Version: 4.14.0-0-202012170942
    Id: qt.license.thirdparty
    	Display name: Qt 3rd Party Licenses
    	Version: 1.0.0
    Id: qt.qt5.51210.doc
    	Display name: Qt 5.12.10 Documentation
    	Version: 5.12.10-0-202011040853
    Id: qt.tools
    	Display name: Developer and Designer Tools
    	Version: 1.1.8-0-202011021046
    Id: qt.qt5.51210.examples
    	Display name: Qt 5.12.10 Examples
    	Version: 5.12.10-0-202011040853
    Id: qt.tools.cmake
    	Display name: CMake 3.19.2
    	Version: 3.19.2-202101071154
    Id: qt
    	Display name: Qt
    	Version: 1.0.15
    Id: qt.qt5.51210
    	Display name: Qt 5.12.10
    	Version: 5.12.10-0-202011040853
    Id: qt.tools.maintenance
     	Display name: Maintenance Tool
     	Version: 4.0.1-1-0-202101190654
    Id: qt.qt5.51210.gcc_64
     	Display name: Desktop gcc 64-bit
     	Version: 5.12.10-0-202011040843
    

    I assume that I could take the package id's from this list and pass them to the command line installer by doing:

    ./qt-unified-linux-x64-4.0.1-1-online.run --accept-licenses --da --ao --confirm-command install qt.license.lgpl qt.tools.ninja qt.tools.qtcreator qt.license.thirdparty qt.qt5.51210.doc qt.tools qt.tools.cmake qt qt.qt5.51210 qt.tools.maintenance qt.qt5.51210.gcc_64
    

    While this does install Qt, it installed multiple versions of Qt.

    $ ll
    
     5.12.0/
     5.12.10/
     5.12.2/
     5.12.4/
     5.12.5/
     5.12.6/
     5.12.8/
     5.12.9/
     5.15.0/
     5.15.1/
     components.xml
     dist/
     Docs/
     Examples/
     InstallationLog.txt
     installer.dat
     installerResources/
     Licenses/
     MaintenanceTool*
     MaintenanceTool.dat
     MaintenanceTool.ini
     network.xml
     Tools/
    

    and ./MaintenanceTool li lists many more packages then I said I wanted to install.

    Clearly there is something about using the command line installer I do not understand.

    Can someone clear this up for me?

    Thank you.



  • I have this one partially resolved. By issuing the command,

    ./qt-unified-linux-x64-4.0.1-1-online.run --accept-licenses --da --ao --confirm-command install qt.tools.ninja qt.tools.qtcreator qt.tools.cmake qt.qt5.51210.gcc_64
    

    I can get just 5.12.10 installed.

    The primary issue was that I was asking it to install qt.qt5.51210 & qt.qt5.51210.gcc_64, for example. By asking it to install qt.qt5.51210, it will install all of the android, etc. stuff when I just needed the gcc_64 part. I removed qt.qt5.51210 from the install command and just included qt.qt5.51210.gcc_64. This gave me what I wanted and (I guess) only installed the parts of qt.qt5.51210 that were required.

    There is one package installed that I do not want:

    [10] Id: qt.qt5.51210.examples
    [10] 	Display name: Qt 5.12.10 Examples
    [10] 	Version: 5.12.10-0-202011040853
    

    and I am not sure how to tell the installer not to install it.

    Is there documentation somewhere on the package hierarchy?


Log in to reply