Morlock Morlock - 2 years ago 208
Linux Question

linking <iostream.h> in linux using gcc

I'm trying to run my very first c++ program in linux (linux mint 8). I use either gcc or g++, both with the same problem: the compiler does not find the library I am trying to import.

I suspect something like I should either copy the iostream.h file (which I don't know where to look for) in the working folder, move my file to compile somewhere else or use an option of some sort.

Thanks for your suggestions.

Here's the gcc command, the c++ code, and the error message:

gcc -o addition listing2.5.c


#include <iostream.h>

int Addition(int a, int b)
return (a + b);

int main()
cout << "Resultat : " << Addition(2, 4) << "\n";
return 0;


listing2.5.c:1:22: error: iostream.h: No such file or directory
listing2.5.c: In function ‘main’:
listing2.5.c:10: error: ‘cout’ undeclared (first use in this function)
listing2.5.c:10: error: (Each undeclared identifier is reported only once
listing2.5.c:10: error: for each function it appears in.)

Now the code compiles, but I cannot run it from the command line using the file name.
addition: command not found
Any suggestion?

nos nos
Answer Source
  • cout is defined in the std:: namespace, you need to use std::cout instead of just cout.
  • You should also use #include <iostream> not the old iostream.h
  • use g++ to compile C++ programs, it'll link in the standard c++ library. gcc will not. gcc will also compile your code as C code if you give it a .c suffix. Give your files a .cpp suffix.
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download