我正在尝试用qt4 sdk +工具编译一个qt应用程序,我们已经检查了我们的源代码管理服务器(p4)。具体来说,我已将qt4项目(.pro)文件转换为Visual Studio项目文件,该文件在语法上是正确的并且被VS接受。
问题是资源和MOC编译器的位置。 Qmake正在配置visual studio项目文件,以指向最初构建qt4的机器上的位置。
当我查看源,库和二进制文件时,它们位于不同的位置。有很多environemnt变量影响qt4 + qmake行为,但我找不到一个允许我覆盖资源和moc编译器位置的变量。有人可以帮忙吗?
答案 0 :(得分:2)
查看QMAKESPEC
信息,查看一些可用的制作规范。在这种情况下,对于common/linux.conf
make规范,它包括以下行:
QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
从这些方面,我认为您可以更改QT_INSTALL_BINS
变量的定义以指向新位置。或者,您可以覆盖QMAKE_MOC
或QMAKE_UIC
变量以指向您想要的可执行文件。
答案 1 :(得分:2)
我正在研究这个问题,并通过使用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 -query开始返回正确的路径!
有关详细信息,请参阅:http://doc.qt.nokia.com/stable/qt-conf.html
答案 2 :(得分:0)
得到它!,qmake -query“QT_INSTALL_PREFIX”会告诉你qt认为它已安装在哪里。这可以改为:“qmake -set VARIABLE VALUE”
从http://doc.trolltech.com/4.5/qmake-environment-reference.html
获取此信息应该先检查那里: - )
答案 3 :(得分:0)
正确,Windows机器上的等效位置在注册表上:[HKEY_CURRENT_USER] \ Software \ Trolltech \ Versions \ 4.5 \ InstallDir
答案 4 :(得分:0)
使用Qt bin目录中的正确路径创建qt.conf文件,并确保将-nocache
传递给qmake。