首页| 论坛| 消息
主题:Qt 在线安装:命令模式
homeman发表于 2020-05-31 15:23
原创文章,未经允许不得转载

一、前言
由于Qt 5.15.0不提供离线安装包,使用Qt的在线安装器,会出现下载错误而无法安装的问题。比如:
参考文章“Qt使用镜像源快速安装与更新 ”,将镜像源修改为 清华大学开源软件镜像站 ,依然会出现同样的问题,还是会跑到Qt官网的仓库去下载,导致无法安装。

二、解决方法
在Qt Online Installer 3.2.3 Released 的评论里,发现了一个Qt在线下载工具:https://github.com/miurahr/aqtinstall ,经过试用,可以简单、快速、稳定的安装所需要的Qt库和工具。

该工具没有gui界面,通过命令行来下载数据,下载前需要确定qt-version,host,target,arch,这需要一定的动手能力,详细内容请参考aqtinstall的文档。

三、实例说明(举一反三)
目标:在windows上安装Qt 5.15.0的库:android/mingw81_64/msvc2019_64;工具:mingw810_64/QtCreator;doc/src/examples

1、安装Python(> 3.5)
安装Python37到 e:\_Python37,并将 e:\_Python37 和 e:\_Python37\Scripts 添加到windows环境变量里。

2、在命令行里,执行命令安装aqtinstall
pip install aqtinstall

此时安装的是aqtinstall的0.8版本,需要去https://github.com/miurahr/aqtinstall 下载最新的版本(v0.9.0),才可以下载Qt 5.15.0。
将下载的aqtinstall-0.9.0.zip里aqt目录里的所有文件,覆盖到e:\_Python37\Lib\site-packages\aqt,这样apt就是最新版了。

3、建立目录:e:\_Qt

4、在命令行里,执行命令:
aqt install --outputdir e:\_Qt\5.15.0 5.15.0 windows desktop win64_msvc2019_64
aqt install --outputdir e:\_Qt\5.15.0 5.15.0 windows desktop win64_mingw81
aqt install --outputdir e:\_Qt\5.15.0 5.15.0 windows android

aqt tool --outputdir e:\_Qt\5.15.0 windows tools_qtcreator 4.12.1-0 qt.tools.qtcreator
aqt tool --outputdir e:\_Qt\5.15.0 windows tools_mingw 8.1.0-1-202004170606 qt.tools.win64_mingw810

aqt examples --outputdir e:\_Qt\5.15.0 5.15.0 windows desktop
aqt doc --outputdir e:\_Qt\5.15.0 5.15.0 windows desktop
aqt src --outputdir e:\_Qt\5.15.0 5.15.0 windows desktop

上述命令执行完后,可以得到和离线安装一致的目录结构。

对tool子命令,需要指定版本才可以下载,以qtcreator为例,就是meta.7z前面的文字:

5、可将上述命令保存为_aqt-5.15.0.bat文件,方便使用。

6、aqtinstall参数可以参考 e:\_Python37\Lib\site-packages\aqt\combinations.json 文件,里面列出了多种组合的参数。

7、使用过程中出现问题,请参考aqtinstall的文档,或向原作者请教。

说明:aqtinstall当前不支持src/doc/examples的安装,已向作者提交issues,作者已经列为增强功能来实现,请关注aqtinstall的release。

说明:作者已经支持src/doc/examples的安装,请下载最新版本(v0.9.0),参考本文中的步骤进行安装。

浏览大图

浏览大图
下一页 (1/2)
回帖(6):
6楼:lixinwei:
我昨天频繁出现这样的情况,通过抓包,发现下载的时候,先向download.qt.io发送请 ..
5楼:lixinwei:
我昨天频繁出现这样的情况,通过抓包,发现下载的时候,先向download.qt.io发送请 ..
4楼:lixinwei:我昨天频繁出现这样的情况,通过抓包,发现下载的时候,先向download.qt.io发送请求, ..

全部回帖(6)»
最新回帖
收藏本帖
发新帖