kyb*_*kyb 4 c++ qt visual-studio
我刚遇到一个问题,又花了几个小时。
我有一个依赖于Qt. 我刚刚安装了 Qt 5.9.1 但错误:
E1696 cannot open source file "QDir" Logger \Logger.cpp 3
E1696 cannot open source file "QFile" Logger \Logger.cpp 4
E1696 cannot open source file "QString" Logger \Logger.cpp 5
E1696 cannot open source file "QStringBuilder" Logger \Logger.cpp 6
E1696 cannot open source file "QDateTime" Logger c\Logger.cpp 7
E1696 cannot open source file "QMessageBox" Logger \Logger.cpp 8
E1696 cannot open source file "QApplication" Logger \Logger.cpp 9
Run Code Online (Sandbox Code Playgroud)
仍然出现。为什么?
我尝试$(QTDIR)在Properties Pages 中使用变量将 include 文件夹添加到项目中。但它不是指我安装 Qt 的目录。
从QTDIR not found error building project in MSVC ( this answer ) 我知道问题出在*.vcxproj.user.
在解决方案中查找所有<QTDIR>键的所有值*.vcxproj.user。例如使用正则表达式
<QTDIR>.*</QTDIR>
Run Code Online (Sandbox Code Playgroud)
并用适当的 Qt 目录替换它们,即:
<QTDIR>C:\\Qt\\Qt5.9.1\\5.9.1\\msvc2017_64</QTDIR>
Run Code Online (Sandbox Code Playgroud)
double\\用于正则表达式。如果没有使用正则表达式,则写单个 。\
QTDIR手动设置环境变量(对于当前用户):
> setx QTDIR "C:\Qt\Qt5.9.1\5.9.1\msvc2017_64"
Run Code Online (Sandbox Code Playgroud)
我认为这必须由 Qt 安装程序完成。你也可能喜欢setx /m。
接下来,您应该从文件中删除或重命名所有<QTDIR>键*.vcxproj.user。或者完全删除这些文件。
完毕。享受构建项目的乐趣。可能需要重新启动 MS VS。
该*.vcxproj.user文件不应该被转移到其它机器/环境中,它们属于当前系统cinfiguration。因此,将它们从您的存储库中排除,即.gitignore
使用Qt Visual Studio 工具扩展。我没有测试这个。