On 10 June 2011 02:20, Pavel Tolkachev wrote: > --- On Thu, 6/9/11, Brian Budge <brian.budge@xxxxxxxxx> wrote: > >> From: Brian Budge <brian.budge@xxxxxxxxx> >> Subject: Re: undefined reference, plz help >> To: "eric lin" <ericlin@xxxxxxxxxxxxx> >> Cc: gcc-help@xxxxxxxxxxx >> Date: Thursday, June 9, 2011, 8:52 AM >> On Wed, Jun 8, 2011 at 9:26 PM, eric >> lin <ericlin@xxxxxxxxxxxxx> >> wrote: >> > >> > Dear gcc programers: >> > >> > what may cause compile error (on 4.5.2 or maybe >> not) >> > ------ >> > g++ pg49.cpp >> > /tmp/ccUvNoPf.o: In function `main': >> > pg49.cpp:(.text+0x42): undefined reference to >> `IntArray::IntArray(int*, int)' >> > pg49.cpp:(.text+0x5e): undefined reference to >> `IntArrayRC::IntArrayRC(int*, int)' >> > /tmp/ccUvNoPf.o: In function `IntArray::~IntArray()': >> > >> pg49.cpp:(.text._ZN8IntArrayD2Ev[_ZN8IntArrayD5Ev]+0xb): >> undefined reference to `vtable for IntArray' >> > /tmp/ccUvNoPf.o: In function >> `IntArrayRC::~IntArrayRC()': >> > >> pg49.cpp:(.text._ZN10IntArrayRCD2Ev[_ZN10IntArrayRCD5Ev]+0xb): >> undefined reference to `vtable for IntArrayRC' >> > collect2: ld returned 1 exit status >> > -------- >> > eric /* I am happy to supply code I compiled, plz >> show up your private email address or email me privately */ >> > >> > >> > >> > >> >> This means that you've declared, but not defined those >> constructors. >> At link time, the linker cannot find the code for those >> functions. >> >> Brian >> > Just a small correction: these are destructors or other virtual functions that are undefined, not constructors. Actually it's both.