2017-02-21 406 views
0

我按照本教程(here)获取了Clang在Windows上的工作。我选择与msys2结合安装clang的路径。Windows上的Msys2和Clang:找不到iostream文件

以下的所有指令后,我写了简单的程序: 铛++ Helloworld.cpp HelloWorld.exe的-o -std = C++ 14

我得到的错误:

#include <iostream> 
using namespace std; 

int main() 
{ 
cout<<"Hello, World!\n"; 
return 0; 
} 

与编译后:

*Helloworld.cpp:2:10: fatal error: 'iostream' file not found,

1 error generated.*

添加-v在命令行中我得到:

Errors

clang version 3.9.1 (tags/RELEASE_391/final) 
Target: x86_64-w64-windows-gnu 
Thread model: posix 
InstalledDir: C:\msys64\mingw64\bin  
"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:\msys64\mingw64\x86_64-w64-mingw32\include\c++" 
ignoring nonexistent directory "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\x86_64-w64-mingw32" 
ignoring nonexistent directory "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\backward" 
ignoring nonexistent directory "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\" 
ignoring nonexistent directory "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\\x86_64-w64-mingw32" 
ignoring nonexistent directory "C:\msys64\mingw64\x86_64-w64-mingw32\include\c++\\backward" 
ignoring nonexistent directory "C:\msys64\mingw64\include\c++\" 
ignoring nonexistent directory "C:\msys64\mingw64\include\c++\\x86_64-w64-mingw32" 
ignoring nonexistent directory "C:\msys64\mingw64\include\c++\\backward" 
ignoring nonexistent directory "include\c++" 
ignoring nonexistent directory "include\c++\x86_64-w64-mingw32" 
ignoring nonexistent directory "include\c++\backward" 
ignoring nonexistent directory "C:\msys64\mingw64\x86_64-w64-mingw32\include" 
#include "..." search starts here: 
#include <...> search starts here: 
C:\msys64\mingw64\bin\..\lib\clang\3.9.1\include 
C:\msys64\mingw64\include 
End of search list. 
Helloworld.cpp:2:10: fatal error: 'iostream' file not found 
#include <iostream> 
     ^
1 error generated. 

如何让系统找到的iostream?我读了一些关于,你必须指向clang/lib/Frontend/InitHeaderSearch.cpp中的mingw头文件。我在我的电脑上找不到InitHeaderSearch.cpp文件。

谢谢你的帮助。

的Windows 8 锵3.9.1

+0

您应该将错误发布在代码块中,而不是图像中。这使得它更容易阅读,并允许搜索引擎索引你的问题。 – nloewen

回答

0

由于在构建脚本一些依赖丢失的错误。

安装gcc包(3234位的mingw-w64-i686-gcc和64位的mingw-w64-x86_64-gcc)会将它们拉出来。