Windows命令行使用变量作为路径执行命令失败求助
解决Windows CMD中执行QMake时的路径解析错误问题
我来帮你排查这个问题——你遇到的错误提示说明CMD错误地把QTDIR32变量指向的路径当成了要执行的命令,而不是去拼接后面的\bin\qmake.exe。大概率是变量设置或命令解析的小问题,下面是具体的解决步骤:
1. 确认变量设置的正确性
首先检查QTDIR32的设置是否带了多余的引号。如果你设置变量时写了:
set QTDIR32="C:\Qt\5.10.1\msvc2015"
那变量值会包含引号,当你执行%QTDIR32%\bin\qmake.exe -v时,CMD会解析成:
"C:\Qt\5.10.1\msvc2015"\bin\qmake.exe -v
这时候CMD会把引号内的路径当作命令执行,自然就报错了。正确的变量设置应该去掉引号:
set QTDIR32=C:\Qt\5.10.1\msvc2015
2. 正确执行QMake命令
即使变量设置正确,有时候CMD的路径解析也会出问题,稳妥的做法是把整个QMake的完整路径用引号括起来:
"%QTDIR32%\bin\qmake.exe" -v
这样CMD会明确识别出要执行的是引号内的可执行文件,而不会把路径拆分开解析。
3. 验证变量和路径
如果还是有问题,可以先输出变量值确认是否正确:
echo %QTDIR32%
确保输出的是C:\Qt\5.10.1\msvc2015(没有引号),然后手动拼接路径执行测试:
C:\Qt\5.10.1\msvc2015\bin\qmake.exe -v
如果这个手动命令能正常运行,那回到变量的方式,用上面带引号的写法就肯定能解决问题。
内容的提问来源于stack exchange,提问作者Violet Giraffe
相关产品推荐
相关产品推荐

