重写qt4编译时设置

重写qt4编译时设置,qt4,Qt4,我正试图用我们在源代码管理服务器(p4)中签入的QT4SDK+工具编译一个qt应用程序。具体来说,我已经将qt4项目(.pro)文件转换为visual studio项目文件,该文件在语法上是正确的,并且被VS接受 问题在于资源和MOC编译器的位置。Qmake正在配置visual studio项目文件,以指向最初生成qt4的计算机上的位置 当我检查源代码、库和二进制文件时,它们位于不同的位置。有很多环境变量会影响qt4+qmake行为,但我找不到一个可以覆盖资源和moc编译器位置的变量。有人能帮忙

我正试图用我们在源代码管理服务器(p4)中签入的QT4SDK+工具编译一个qt应用程序。具体来说,我已经将qt4项目(.pro)文件转换为visual studio项目文件,该文件在语法上是正确的,并且被VS接受

问题在于资源和MOC编译器的位置。Qmake正在配置visual studio项目文件,以指向最初生成qt4的计算机上的位置

当我检查源代码、库和二进制文件时,它们位于不同的位置。有很多环境变量会影响qt4+qmake行为,但我找不到一个可以覆盖资源和moc编译器位置的变量。有人能帮忙吗?

明白了!,qmake-查询“QT\u安装前缀”将告诉您QT认为它安装在何处。这可以通过“qmake-设置变量值”来更改

此信息来自:


真的应该先检查一下:-)

看看
QMAKESPEC
信息,看看一些可用的规范。在本例中,对于
common/linux.conf
make规范,它包括以下几行:

QMAKE_MOC             = $$[QT_INSTALL_BINS]/moc
QMAKE_UIC             = $$[QT_INSTALL_BINS]/uic

根据这些,我假设您可以更改
QT\u INSTALL\u BINS
变量的定义,以指向您的新位置。或者,您可以覆盖
QMAKE\u MOC
QMAKE\u UIC
变量以指向所需的可执行文件。

正确,windows计算机上的等效位置在注册表上:[HKEY\u CURRENT\u USER]\Software\trolletech\Versions\4.5\InstallDir

在qt-bin目录中创建一个路径正确的qt.conf文件,并确保将
-nocache
传递给qmake。

我正在研究这个问题,并找到了一种通过使用qt.conf文件自定义qt的方法(在qt 4.7.2中)

在本例中,我添加了一个qt4-4.7.2/bin/qt.conf(我认为它必须与qmake可执行文件位于同一位置)

包括以下内容:

[Paths]
Prefix = c:/my_path/to/qt4-4.7.2
qmake查询开始返回正确的路径


请参阅:有关更多详细信息

这并不完全正确,qmake“set”和“query”命令允许设置持久数据,但不允许覆盖qt安装变量argh!,因此,将QT_INSTALL_PREFIX设置为任意值将不起作用:-(传统上,这类信息将通过设置QTDIR环境变量进行配置,但这种行为在Qt4中发生了更改