每当我尝试编译此代码时,它总是会出现此错误:
In file included from /usr/include/wchar.h:6:0,
from /usr/lib/gcc/i686-pc-cygwin/4.9.2/include/c++/cwchar:44,
from /usr/lib/gcc/i686-pc-cygwin/4.9.2/include/c++/bits/postypes.h:40,
from /usr/lib/gcc/i686-pc-cygwin/4.9.2/include/c++/iosfwd:40,
from /usr/lib/gcc/i686-pc-cygwin/4.9.2/include/c++/ios:38,
from /usr/lib/gcc/i686-pc-cygwin/4.9.2/include/c++/ostream:38,
from /usr/lib/gcc/i686-pc-cygwin/4.9.2/include/c++/iostream:39,
from test.cpp:1:
/usr/include/sys/reent.h:14:20: fatal error: stddef.h: No such file or directory
#include <stddef.h>
^
compilation terminated.
Run Code Online (Sandbox Code Playgroud)
我试图编译的代码是:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World! :D";
return 0;
}
Run Code Online (Sandbox Code Playgroud)
Thi*_*zKp 62
该错误是因为您的gcc-core软件包和gcc-g ++不是同一版本.要么降级其中一个以解决问题或更新两个库.建议更新两个库.
我在新安装 MinGW 时遇到此错误,它与“Prasanth Karri”当前接受的答案中提到的已安装软件包无关。就我而言,问题是由-nostdinc我的 Makefile引起的。实际上,我只在为不同的目标平台构建时需要该编译器标志(而不是使用 MinGW 时),因此我通过从 MinGW 构建中删除该标志来解决该问题。