我知道这个话题很少见,但我无法得到满意的答复。
C:\Users\Krzysiek>gcc test.c
test.c:3:20: fatal error: iostream: No such file or directory
compilation terminated.
这是我尝试做的事情
#include <iostream>
using namespace std;
int main ()
{
cout << "Hello World!";
return 0;
}
简单程序“include”
我听说过LIBRARY_PATH。所以我已经设定了。我还有同样的错误。
答案 0 :(得分:3)
GCC提供了调用其各种编译器的包装器。
您正在使用gcc
,这是针对C的(因此不会包含或链接C ++标准库;编译器会继续抱怨其余的你的代码,因为它无效C);
使用g++
,适用于C ++。
还尝试使用C ++源文件的常规扩展,.cc
,.cxx
或.cpp
。
答案 1 :(得分:2)
改为使用g++
:它将链接到c ++标准库。
答案 2 :(得分:1)
使用gcc
命令时,gcc
会查看文件扩展名以确定要使用哪种语言进行编译。当您使用.c
文件时,gcc
默认会切换为C.
# Use the C compiler
gcc test.c
# Use the C++ compiler
gcc test.cpp
要选择其他语言,您可以使用-x
选项:
# Use the C++ compiler even if the extension is .c
gcc -xc++ test.c
使用C ++编译器的另一种方法是在命令行中使用g++
。这是首选方式,因为它与正确的库链接。
# Use the C++ compiler
g++ test.c