构建后如何在Windows上安装Qt?
我找不到有关如何安装Windows上构建的Qt的任何信息。构建后如何在Windows上安装Qt?,windows,qt,configuration,installation,make-install,Windows,Qt,Configuration,Installation,Make Install,我找不到有关如何安装Windows上构建的Qt的任何信息。 在wiki文章中,配置脚本中有对-前缀选项的描述,但此选项在Windows上不可用。 我知道我可以从build文件夹中直接使用Qt,但不执行安装步骤似乎并不合适。这种方法的一个问题是规模;Qt的build文件夹需要大约4GB的空间,而在使用二进制安装程序安装之后,Qt需要大约1GB的空间。我想这是因为在构建过程中创建了临时文件。我希望某些安装过程只安装(复制)所需的文件,并将临时文件保留在生成文件夹中。Windows上的Qt无法使用ma
在wiki文章中,
配置
脚本中有对-前缀
选项的描述,但此选项在Windows上不可用。我知道我可以从build文件夹中直接使用Qt,但不执行安装步骤似乎并不合适。这种方法的一个问题是规模;Qt的build文件夹需要大约4GB的空间,而在使用二进制安装程序安装之后,Qt需要大约1GB的空间。我想这是因为在构建过程中创建了临时文件。我希望某些安装过程只安装(复制)所需的文件,并将临时文件保留在生成文件夹中。Windows上的Qt无法使用
make install
进行安装,您会注意到,用于Windows的Qt installer只是为新安装位置修补DLL和PDB
我的建议是在你想安装它的地方做一个阴影构建。您可以手动删除
*.obj
文件以节省空间。正如奥斯梅尔所说,Windows上没有安装Qt的步骤。
但是,可以尝试通过执行以下操作来近似它
在生成文件夹中运行
makeclean
,删除所有临时文件将生成文件夹复制到要“安装”Qt的位置。我们称之为
INSTALL\u DIR
qmake.exe
可执行文件中硬编码的路径
运行qmake-query
查看哪些路径被编译(硬编码)为qmake和A.修复包含生成文件夹的路径,方法是使用
qmake-set
(1)将其替换为INSTALL\u DIR
。或
B在
INSTALL\u DIR
的bin子文件夹中创建一个文件,指定其中的新Qt路径李>
在Qt提供的二进制发行版中,pwd包含在
QMAKE\u INCDIR
中,因此在您的项目include路径中以“.”结束。默认情况下,这不会发生在自定义构建的Qt中,因此您必须将以下行添加到mkspecs/YOUR-PLATFORM-HERE/qmake.conf
文件中:QMAKE\u INCDIR+=”
prl
文件将Qt组件添加到项目文件(例如
CONFIG+=uitools
)时,Qt在%QTDIR%/lib/qtutools.prl
中查找该组件的库依赖项。这些文件将具有配置和构建Qt的目录的硬编码路径。您必须将所有lib/*.prl
文件的构建目录替换为您将Qt移动到的目录李>
如果进行了卷影生成(生成在包含源的文件夹之外的文件夹中生成),则
include
子文件夹中的标题仅转发到原始标题。比如,BUILD\u DIR\include\QtCore\qabstractanimation.h
看起来像这样#包括“SRC_DIR/SRC/corelib/animation/qabstractanimation.h”
如果您不想依赖包含源的文件夹的存在,则必须将
SRC_DIR/SRC
子文件夹复制到目标文件夹,并修复include
文件夹中的所有标题,以便它们转发到SRC
子文件夹的新位置在Windows下构建Qt的过程使得在构建之后移动(安装)Qt变得非常方便。只有在……的情况下,你才应该这样做。。。我找不到任何好的理由去经历这些麻烦 记住
最简单的方法是将Qt的源代码放在构建之后想要Qt停留的文件夹中,并在此文件夹中进行构建。这使得除上述第1步和第4步以外的所有步骤都不必要 1)
使用
qmake-set设置的变量保存在注册表项中
HKEY\U CURRENT\U USER\Software\TROLTECH\QMake\
因此,当您希望使用不同版本的Qt的不同项目恰好具有相同版本的qmake时,您可能会遇到问题。在这种情况下,更好的解决方案是使用qt.conf
文件(实际上是文件,因为每次安装qt都需要一个文件)(选项3b)
上面的许多信息来自Gabe Rudy编写的wiki页面。查看他的项目,它为您提供了上述问题的简单解决方案。人们声称Windows上没有“makeinstall”,这很奇怪
我已经使用过很多次了,我同意它不是其他平台上的,但它可以达到它的目的
如何在Windows上使用Qt的make install(从cmd):
makeinstall位复制所有必要的头,以便能够删除源目录。删除所有对象和不必要的内容:
del /S /Q *.obj lib\*.dll
rmdir /S /Q docs-build qmake tools src
这允许您删除源目录。我不知道这对调试Qt源代码有什么影响,但它确实减少了影子构建的大小。我使用它来维护最小大小的32位和64位版本。步骤1:移动Qt
- 剪贴
- 当前目录-C:\tools\Qt
- 目标目录-C:\sim\dep\Qt
步骤2:获取旧的Qt目录
- 转到C:\sim\dep\Qt\2010.02.1\Qt
- 打开.qmake.cache
- 查找变量QT_源树
- 注意QT_SOURCE_TREE的值
- 我的是C:\tools\Qt\2010.02.1\Qt
步骤3:修补Qt
- 转到C:\sim\dep\Qt\2010.02.1\bin
- 语法为qpatch.exe list oldDir newDir
- 用于修补windows C:\tools\Qt\2010.02.1\Qt C:\sim\dep\Qt\2010.02.1\Qt的qpatch.exe文件
步骤4:设置环境变量
- 设置QTDIR=C:\sim\dep\Qt\2010.02.1\Qt
- 设置QMAKESPEC=C:\sim\dep\Qt\2010.02.1\Qt\mkspecs\win32-g++
- 设置路径=%PATH%;C:\sim\dep\Qt\2010.02.1\Qt\bin
- 设置路径=%PATH%;C:\sim\d
del /S /Q *.obj lib\*.dll
rmdir /S /Q docs-build qmake tools src
fart -c -i -r Makefile* $(INSTALL_ROOT)\qt-4.8.3 $(INSTALL_ROOT)\my-install-dir
set INSTALL_ROOT=
mingw32-make install
[Paths]
Prefix=C:/my-install-dir
Translations = translations
cd <path>
installer.exe --runoperation QtPatch windows <path> qt5
configure -prefix C:\the\path\I\want ...
nmake
nmake install