Qt xcopy没有';在makefile中不工作
在尝试构建我在64位Windows 7安装上下载的项目时,我遇到了错误Qt xcopy没有';在makefile中不工作,qt,makefile,qmake,xcopy,Qt,Makefile,Qmake,Xcopy,在尝试构建我在64位Windows 7安装上下载的项目时,我遇到了错误[copyResources]错误4。在Qt生成的Makefile中,它包含以下两行: copyResources: xcopy "D:\Downloads\GraphViz\GraphViz\res" "D:\Downloads\GraphViz\build-GraphViz-Desktop_Qt_5_3_MinGW_32bit-Debug" /e /y make在达到此目标时失败,错误为参数数无效。我最初假设一
[copyResources]错误4
。在Qt生成的Makefile中,它包含以下两行:
copyResources:
xcopy "D:\Downloads\GraphViz\GraphViz\res" "D:\Downloads\GraphViz\build-GraphViz-Desktop_Qt_5_3_MinGW_32bit-Debug" /e /y
make在达到此目标时失败,错误为参数数无效
。我最初假设一个格式不正确的命令,但如果在命令提示符下运行它,它可以正常工作。更奇怪的是,如果我将确切的命令复制并粘贴到xcopycall.bat
中,并将Makefile更改为
copyResources:
xcopycall
然后一切正常。切换到
/
没有帮助,因此这似乎不是一个逃避问题。为什么从批处理文件而不是在生成文件中运行它可以解决这个问题?jturcotte和lixiang说的是对的,在我的例子中,sh.exe
在dirC:\Program Files\Git\usr\bin
中,但是从路径
中删除dir是不需要的,所以我在“GraphViz.pro”中注释了关于xcopy
的行。它并不优雅,但很有效:P尝试使用“\”而不是单引号-呃,我只是仔细看了一下,没有空格,所以实际上应该很好W32 make有一个讨厌的习惯,就是通过sh而不是cmd运行命令,如果它能在路径中找到sh.exe的话。确保您没有使用cygwin或git添加它(如果您选择在安装过程中添加到PATH的完整unix实用程序文件夹)。@jturcotte的注释就是答案。只需添加我从#qt IRC获得的一点。在windows上的CMD中使用“where sh”查找sh.exe的位置