C++ Can';不要在Windows命令行中编译任何Qt项目,只能在Qt Creator中编译

C++ Can';不要在Windows命令行中编译任何Qt项目,只能在Qt Creator中编译,c++,qt,makefile,msvc12,C++,Qt,Makefile,Msvc12,我开始搞砸Qt了,在他们的IDE中编译项目也没有问题。命令行是一个不同的故事。QtCreator很酷,但我需要自动化我的构建 没有比这更简单的了: 无标题.pro内容: SOURCES += \ source.cpp int main() { return 0; } 来源.cpp内容: SOURCES += \ source.cpp int main() { return 0; } 在编译输出中,它显然是这样做的: C:\Qt\Qt5.5.1_x64\To

我开始搞砸Qt了,在他们的IDE中编译项目也没有问题。命令行是一个不同的故事。QtCreator很酷,但我需要自动化我的构建

没有比这更简单的了:

无标题.pro内容:

SOURCES += \
    source.cpp
int main()
{
    return 0;
}
来源.cpp内容:

SOURCES += \
    source.cpp
int main()
{
    return 0;
}
在编译输出中,它显然是这样做的:

C:\Qt\Qt5.5.1_x64\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
因此,我打开CMD.exe并运行以下命令:

C:\MyProjectDir>C:\Qt\Qt5.5.1_x64\5.5\msvc2013_64\bin\qmake.exe 
这使得我的debug、release、.qmake.stash、Makefile、Makefile.debug和Makefile.release文件和目录

接下来,我跑:

C:\MyProjectDir>C:\Qt\Qt5.5.1_x64\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
我总是会遇到这样的错误:

链接:致命错误LNK1104:无法打开文件'shell32.lib'jom: C:\MyProjectDir\Makefile.Debug[Debug\untitle.exe]错误1104

我做错了什么?我也给nmake打了一针,但也没用。我宁愿用jom

对于该特定项目,它使用msvc2013_64-5.5.1预编译安装程序

编辑:由于注释中提到了nmake,以下是nmake的错误输出:

链接:致命错误LNK1181:无法打开输入文件'shell32.lib'NMAKE :致命错误U1077:“'C:\Program Files(x86)\Microsoft Visual Studio 12.0\VC\bin\link.EXE“':返回代码“0x49d”停止。NMAKE:致命错误U1077:“'C:\Program Files(x86)\Microsoft Visual Studio 12.0\VC\bin\nmake.exe“':返回代码“0x2”停止


使用(或模拟)Qt命令提示符(“Qt 5.x用于桌面…”快捷方式),它将设置您需要的路径。

执行qmake后只需键入“make”,即可完成任务。它不会。我在我的答案底部解释了这一点。你能更新你的完整的专业版吗file@kayleeFrye_onDeck你试过使用Qt命令行快捷方式吗?作为Ubuntu(或Linux)的旁注,如果Qt工具是从软件包存储库安装的,你不需要设置任何东西。在命令行开箱即用中,一切都可以正常工作。这个问题是一个完美的例子,为什么我更喜欢Ubuntu在Qt开发中。仅供任何检查这个的人参考,CMD快捷方式在这里是给我的,只要更新Qt程序名,不管你给它什么。我不想使用默认名称
Qt 5.5.1
,因为我有多个5.5.1安装:
%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Qt 5.5.1\u x64\5.5\MSVC 2013(64位)”
若要不使用快捷方式,请使用快捷方式属性中显示的目标。对我来说,这是:
C:\Windows\System32\cmd.exe/A/Q/K C:\Qt\Qt5.5.1\u x64\5.5\msvc2013\u 64\bin\qtenv2.bat
C:\Qt\Qt5.5.1\u x64
是我所说的Qt安装目录——我认为默认为
C:\Qt\Qt5.5.1
@kayleefree\u onDeck在Win8之前,快捷方式更容易找到(与“开始”菜单中的Qt Creator一起)。在Win10上,您使用的Windows版本可能更简单(再次)。我使用的是Windows 10。因此,在Windows 10中,当我检查Qt文件夹时,我没有获得CMD快捷方式,但会显示语言学家和设计师之类的内容——我右键单击它们并选择“打开文件位置”,并且它们与cmd快捷方式共享相同的文件位置。