Dan*_*iil 4 c++ qt cmake visual-studio-code
Visual Studio Code 出现以下错误:
cannot open source file "QtWidgets/qtwidgetsglobal.h" (dependency of "QApplication")C/C++(1696)
Run Code Online (Sandbox Code Playgroud)
我有一个 CMake 项目,已成功编译和构建,但 Intellisense 似乎不起作用。
我的路径中有这个目录,其中包含qtwidgetsglobal.h:
/usr/local/Cellar/qt/5.13.1/lib/QtWidgets.framework/Headers
Run Code Online (Sandbox Code Playgroud)
还有一件事:
目录/usr/local/Cellar/qt/5.13.1/lib/QtWidgets.framework
包含目录Headers和奇怪的可执行文件,QtWidgets我被认为包含在内,-I/usr/local/Cellar/qt/5.13.1/lib/QtWidgets.framework因为 QtCreator 两者都有
/usr/local/Cellar/qt/5.13.1/lib/QtWidgets.framework,
/usr/local/Cellar/qt/5.13.1/lib/QtWidgets.framework/Headers
但没有任何作用。
实际上,Visual Studio Code 似乎会忽略两个目录
/usr/local/Cellar/qt/5.13.1/lib/QtWidgets.framework和
/usr/local/Cellar/qt/5.13.1/lib/QtWidgets.framework/Headers
指定的情况。
有关如何启用 Intellisense 与 Visual Studio Code 配合使用的任何建议。
小智 5
您需要使用compileCommands而不是cake-toolsconfigurationProvider。
因此在你c_cpp_properties.json添加行
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
Run Code Online (Sandbox Code Playgroud)
并删除
"configurationProvider": "ms-vscode.cmake-tools",
Run Code Online (Sandbox Code Playgroud)
完整的配置文件应该看起来像这样
{
"configurations": [
{
"name": "Mac",
"compilerPath": "/usr/bin/clang",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"browse": {
"limitSymbolsToIncludedHeaders": true
},
"macFrameworkPath": [
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks"
],
"cStandard": "c11",
"intelliSenseMode": "clang-x64",
"cppStandard": "c++14"
}
],
"version": 4
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1765 次 |
| 最近记录: |