我在两台不同的机器上使用 qt-opensource-windows-x86-mingw492-5.5.0 。
我的问题是在构建后使用以下命令复制文件:
copyfiles.commands += @call xcopy /S /Y /I $${THIRDPARTY_PATH}\\ffmpeg\\Windows\\* $${DESTDIR_WIN}\\debug
我的第一台机器有Visual Studio 2013,但我正在使用mingw。这个正确使用了复制文件。
在我的第二台机器上,我没有Visual Studio,当我运行构建时,我收到以下错误:
/usr/bin/sh: @call: command not found
我不确定为什么同样的Qt安装会提供两种不同的解决方案。我查看了项目的构建步骤,两个项目都是一样的。
有什么想法吗?
答案 0 :(得分:0)
你的问题很可能是你有一个' sh.exe'在第二台机器上的PATH中。
生成Makefile时,qmake尝试聪明并通过检查是否从Windows命令行(cmd.exe)或Unix / Cygwin shell(sh.exe)运行来确定它是否正常运行' sh.exe'是在当前的PATH中。如果它认为它在Unix shell中运行,它会生成一个用于mingw32-make的Makefile,否则一个Makefile意味着nmake。
现在这个测试非常虚伪,主要是因为sh.exe属于' bin Windows上的git目录。如果这是您的问题,并且您正在使用git,请确保包含' cmd' git目录而不是。