【发布时间】:2020-07-07 20:24:20
【问题描述】:
我为 Visual Studio Code (ms-vscode.cpptools) 安装了 C/C++ 扩展,我正在尝试编译一个 .cpp 文件,但我不断收到fatal error C1034: iostream: no include path set。
这里是tasks.json的内容:
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "C/C++: cl.exe build active file",
"command": "cl.exe",
"args": [
"/Zi",
"/EHsc",
"/Fe:",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"${file}"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$msCompile"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
这里是c_cpp_properties.json的内容:
{
"configurations": [
{
"name": "Win32",
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"windowsSdkVersion": "8.1",
"compilerPath": "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.26.28801/bin/Hostx64/x64/cl.exe",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "msvc-x64"
}
],
"version": 4
}
这是确切的输出:
> 执行任务:cl.exe /Zi /EHsc /Fe:c:\Users\User\Documents\C\cpp_workshop-cpp_ex2\main.exe c:\Users\User\Documents\C\cpp_workshop-cpp_ex2\main.cpp
Microsoft (R) C/C++ 优化编译器版本 19.00.24213.1 for x86 版权所有 (C) 微软公司。保留所有权利。
main.cpp
c:\Users\User\Documents\C\cpp_workshop-cpp_ex2\main.cpp(21): 致命错误 C1034:iostream:未设置包含路径
终端进程以退出代码终止:1
帮助我,堆栈溢出。你是我唯一的希望!
【问题讨论】:
-
@TedLyngmo 不是。它说here“如果您的程序包含不在您的工作区或标准库路径中的头文件,您只需要添加到包含路径数组设置。”
-
好的,您是从 Visual Studio 的开发人员命令提示符启动 VS Code 吗? issue 3654: "如果您收到错误 C1034: iostream: no include path set: 如果您还没有,请从随 MSVC 编译器集一起安装的开发人员命令提示符启动 VS 代码。如果您有现在一切都解决了,很好。如果没有,请继续。如果您收到错误致命错误 LNK1112:模块机器类型'x86'与目标机器类型'x64'冲突,您需要从 x64 开发人员命令提示符启动 VS Code"
-
@TedLyngmo 是的,它现在可以工作了。谢谢!但它非常麻烦,一次只构建一个文件。我想我会迁移到 CMake。
-
很好用!您可能可以将构建拆分为较小的任务,并在 tasks.json 中创建一个依赖关系图(链接为
dependsOn编译任务的任务) - If you list more than one task in thedependsOnproperty they are executed in parallel.
标签: c++ c visual-studio-code