当我尝试创建一个由在不同国家和地区工作的人开发的项目时,我在控制台中不断收到以下错误。他之所以提到这个问题是因为数据/时间与他的电脑不同。我不确定这是否属实,如果是的话,必须有一个解决方案,而不必改变我的计算机时间来匹配他的。我不知道还有哪些内容可以帮助您解决问题,如果只是让我知道并且我会更新。我对C ++ / Qt Creator有点新鲜。为什么会这样呢?它似乎永远不会完成,它只是无休止地将它打印到控制台。
编译输出控制台
Running steps for project Nexus...
Configuration unchanged, skipping qmake step.
Starting: "C:\Qt\Tools\mingw492_32\bin\mingw32-make.exe"
C:\Qt\5.5\mingw492_32\bin\qmake.exe -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug" -o Makefile ..\Nexus\Nexus.pro
C:\Qt\5.5\mingw492_32\bin\qmake.exe -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug" -o Makefile ..\Nexus\Nexus.pro
C:\Qt\5.5\mingw492_32\bin\qmake.exe -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug" -o Makefile ..\Nexus\Nexus.pro
C:\Qt\5.5\mingw492_32\bin\qmake.exe -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug" -o Makefile ..\Nexus\Nexus.pro
常规消息输出控制台
Warnings while parsing QML type information of C:/Qt/5.5/mingw492_32/qml:
<dump of C:\Qt\5.5\mingw492_32\qml>:1:24: Reading only version 1.1 parts.
<dump of C:\Qt\5.5\mingw492_32\qml>:10:5: Expected only Component and ModuleApi object definitions.
专业档案
#-------------------------------------------------
#
# Project created by QtCreator 2016-02-29T21:37:32
#
#-------------------------------------------------
QT += core gui xml
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
include(core/core.pri)
include(node/node.pri)
include(librarybox/librarybox.pri)
include(blockeditor/blockeditor.pri)
include(propertyeditor/propertyeditor.pri)
include(lib/lib.pri)
TARGET = Nexus
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui \
virtualnamepropertyitem.ui
RESOURCES += \
nexus_resources.qrc
RC_FILE = nexus.rc
答案 0 :(得分:4)
如果您的ArrayList
文件(或任何其他文件)具有未来的时间戳,则会发生这种情况。 .pro
生成的Makefile
包含一条规则,当qmake
文件早于Makefile
文件时,该规则会重新生成.pro
。由于新的Makefile
仍比未来的版本更旧,因此这将持续到实际到达正确的时间为止。
有两种方法可以摆脱这种行为:
.pro
文件的时间戳过去(不推荐).pro
文件。即使像新评论这样的简单编辑也应该足够了。答案 1 :(得分:4)
最新版本的QtCreator(Qt 5.6.0为3.6.1)存在同样的问题。
&#34; Zeta&#34;提出的答案没有帮助。
禁用&#34;影子构建&#34;在项目选项中为我解决了问题。这是一个很好的解决方法。
最后缩短文件名(某些地方很大)以解决问题:
问题随后消失了(即使使用阴影构建,它可能与阴影构建使用名称很长的输出文件夹相关)。
当文件路径太长时(&gt; ~170,找到a post on a forum reporting that),显然存在一个错误。
另一种方法是更改QtCreator用于阴影构建的模式。这可以从QtCreator选项中进行修改,然后您可以缩短名称,这是快速轻松解决问题的另一种方法。
答案 2 :(得分:0)
我编写了一个python脚本,通过递归遍历项目的所有文件,只是重新保存文件。这更新了时间戳并更正了QMake无限循环。它现在可以正确编译。