Windows上的Msys2和Clang:未找到iostream文件 [英] Msys2 and Clang on Windows: iostream file not found
本文介绍了Windows上的Msys2和Clang:未找到iostream文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我按照本教程(here)让Clang在Windows上运行。我选择了安装clang和msys2的路径。
按照所有说明编写了简单的程序:
#include <iostream>
using namespace std;
int main()
{
cout<<"Hello, World!
";
return 0;
}
使用以下命令编译后: Clang++Helloworld.cpp-o Helloworld.exe-std=c++14
我收到错误:
*HelloWorld.cpp:2:10:致命错误:找不到‘iostream’文件,
%1生成错误。*
在我得到的命令行中添加-v:
clang version 3.9.1 (tags/RELEASE_391/final)
Target: x86_64-w64-windows-gnu
Thread model: posix
InstalledDir: C:msys64mingw64in
"C:\msys64\mingw64\bin\clang++.exe" -cc1 -triple x86_64-w64-windows-gnu -emit-obj -mrelax-all -disable-free -disable- llvm-verifier -discard-value-names -main-file-name Helloworld.cpp -mrelocation-model pic -pic-level 2 -mthread-model posix -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -target-cpu x86-64 -momit-leaf-frame-pointer -v -dwarf-column-info -debugger-tuning=gdb -resource-dir "C:\msys64\mingw64\bin\..\lib\clang\3.9.1" -internal-isystem "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++" -internal-isystem "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\x86_64-w64-mingw32" -internal-isystem "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\backward" -internal-isystem "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\" -internal-isystem "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\\x86_64-w64-mingw32" -internal-isystem "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\\backward" -internal-isystem "C:\msys64\mingw64\include\c++\" -internal-isystem "C:\msys64\mingw64\include\c++\\x86_64-w64-mingw32" -internal-isystem "C:\msys64\mingw64\include\c++\\backward" -internal-isystem "include\c++" -internal-isystem "include\c++\x86_64-w64-mingw32" -internal-isystem "include\c++\backward" -internal-isystem "C:\msys64\mingw64\bin\..\lib\clang\3.9.1\include" -internal-isystem "C:\msys64\mingw64\x86_64-w64-mingw32\include" -internal-isystem "C:\msys64\mingw64\include" -std=c++14 -fdeprecated-macro -fdebug-compilation-dir "C:\msys64\programming" -ferror-limit 19 -fmessage-length 0 -femulated-tls -fno-use-cxa-atexit -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -o "C:\msys64\tmp\Helloworld-2393e7.o" -x c++ Helloworld.cpp
clang -cc1 version 3.9.1 based upon LLVM 3.9.1 default target x86_64-w64-windows-gnu
ignoring nonexistent directory "C:msys64mingw64x86_64-w64-mingw32includec++"
ignoring nonexistent directory "C:msys64mingw64x86_64-w64-mingw32includec++x86_64-w64-mingw32"
ignoring nonexistent directory "C:msys64mingw64x86_64-w64-mingw32includec++ackward"
ignoring nonexistent directory "C:msys64mingw64x86_64-w64-mingw32includec++"
ignoring nonexistent directory "C:msys64mingw64x86_64-w64-mingw32includec++\x86_64-w64-mingw32"
ignoring nonexistent directory "C:msys64mingw64x86_64-w64-mingw32includec++\backward"
ignoring nonexistent directory "C:msys64mingw64includec++"
ignoring nonexistent directory "C:msys64mingw64includec++\x86_64-w64-mingw32"
ignoring nonexistent directory "C:msys64mingw64includec++\backward"
ignoring nonexistent directory "includec++"
ignoring nonexistent directory "includec++x86_64-w64-mingw32"
ignoring nonexistent directory "includec++ackward"
ignoring nonexistent directory "C:msys64mingw64x86_64-w64-mingw32include"
#include "..." search starts here:
#include <...> search starts here:
C:msys64mingw64in..libclang3.9.1include
C:msys64mingw64include
End of search list.
Helloworld.cpp:2:10: fatal error: 'iostream' file not found
#include <iostream>
^
1 error generated.
如何让系统查找iostream?我读到了一些东西,您必须指向clang/lib/Fronend/InitHeaderSearch.cpp中的mingw头文件。我在电脑上找不到InitHeaderSearch.cpp文件。
感谢您的帮助。
Windows 8 Clang 3.9.1
推荐答案
由于生成脚本中的错误,某些依赖项丢失。
安装GCC包(32位mingw-w64-i686-gcc
,64位mingw-w64-x86_64-gcc
)拉取。
这篇关于Windows上的Msys2和Clang:未找到iostream文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文