目标:使用 lupdate 生成/更新Qt小部件应用的* .ts文件。
设定:
问题:我已经从 QtCreator 运行 lupdate ,以及从控制台手动运行 lupdate ,但两种情况都无法运行。消息是:
启动外部工具 " C:\ Qt的\ Qt5.9.1 \ 5.9.1 \ msvc2017_64 \ BIN \ lupdate.exe" C:/Documents/Projects/untitled1/untitled1.pro警告:项目错误: 无法运行编译器' cl'。也许你忘了设置环境了?
" C:\ Qt的\ Qt5.9.1 \ 5.9.1 \ msvc2017_64 \ BIN \ lupdate.exe"完成
否则项目编译,运行和调试没有套件问题:桌面Qt 5.9.1 MSVC2017 64位(默认),这就是我认为环境设置正确的原因起来。
我无法找到有关此问题的任何信息。任何想法如何使 lupdate 工作?
编辑:我正在添加当前设置的屏幕截图(由Qt安装程序制作)以试图说明我认为环境设置正确的原因:
试剂盒
cmake配置
答案 0 :(得分:9)
解决方案
根据问题中的评论中 nm 提供的信息和建议,我找到的解决方案(相当黑客,但不是太多):< / p>
使用以下单行内容创建 translate.bat :
&#34;%programfiles(x86)%\ Microsoft Visual Studio \ 2017 \ Community \ VC \ Auxiliary \ Build \ vcvars64.bat&#34; &安培; lupdate.exe%1
并将其放在%{CurrentProject:QT_INSTALL_BINS}
下(在我的情况下为C:\Qt\Qt5.9.1\5.9.1\msvc2017_64\bin
)。确保 translate.bat 包含计算机上 vcvars64.bat 的正确路径。如果需要,您也可以放置另一个版本的 vcvars 。
在 Qt Creator 中选择工具/选项/环境/外部工具,然后 Linguist Linguist em>类别。将其命名为创建/更新TS文件。按如下方式设置此条目的字段:
可执行文件:%{CurrentProject:QT_INSTALL_BINS}\translate.bat
,
参数:%{CurrentProject:FilePath}
,
工作目录:%{CurrentProject:QT_INSTALL_BINS}
,
如下所示:External Tools,然后应用更改并关闭选项窗口。
背景
以下是评论中 n.m。提供的link,它是此解决方案的基础。这也是 n.m。的解释:
从控制台运行lupdate绝对要求你运行 vcbars * .bat,如我给你的链接中所述。那是因为 lupdate想要运行编译器,它不知道在哪里找到它。 vcbars * .bat会调整您的PATH和其他环境变量。在 理论上GUI应该为您设置环境,但在实践中 它可能没有。
答案 1 :(得分:2)
答案 2 :(得分:1)
您必须从lupdate.exe
控制台运行VS2015 x86 Native Tools Command Prompt
。