求救!gcc下编译一个小程序错误一大堆,看不懂
#include<iostream>
using namespace std;
class Tclass
{ public:
int x,y;
void print()
{cout << x << "," << y << endl;};
};
int add(Tclass *ptf)
{ return(ptf->x + ptf->y);}
int main()
{ Tclass test, *pt=new(Tclass);
pt->x = 100; pt->y = 200;
pt->print();
test.x = 150; test.y = 450;
test.print();
cout << "x+y+" << add(&test) << endl;
return 0;
}
/tmp/ccQH3lPq.o: In function `main':
5-10.cpp:(.text+0x29): undefined reference to `operator new(unsigned long)'
5-10.cpp:(.text+0x80): undefined reference to `std::cout'
5-10.cpp:(.text+0x85): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
5-10.cpp:(.text+0x8f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::operator<<(int)'
5-10.cpp:(.text+0x94): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)'
5-10.cpp:(.text+0x9c): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))'
/tmp/ccQH3lPq.o: In function `__static_initialization_and_destruction_0(int, int)':
5-10.cpp:(.text+0xcf): undefined reference to `std::ios_base::Init::Init()'
5-10.cpp:(.text+0xd4): undefined reference to `std::ios_base::Init::~Init()'
/tmp/ccQH3lPq.o: In function `Tclass::print()':
5-10.cpp:(.text._ZN6Tclass5printEv[Tclass::print()]+0x1d): undefined reference to `std::cout'
5-10.cpp:(.text._ZN6Tclass5printEv[Tclass::print()]+0x22): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::operator<<(int)'
5-10.cpp:(.text._ZN6Tclass5printEv[Tclass::print()]+0x2f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
5-10.cpp:(.text._ZN6Tclass5printEv[Tclass::print()]+0x39): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::operator<<(int)'
5-10.cpp:(.text._ZN6Tclass5printEv[Tclass::print()]+0x3e): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)'
5-10.cpp:(.text._ZN6Tclass5printEv[Tclass::print()]+0x46): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))'
/tmp/ccQH3lPq.o:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status