title: GCC C++ Linker errors: Undefined reference to 'vtable for XXX', Undefined reference to 'ClassName::ClassName()'
body: <p>I'm setting up a C++ project, on Ubuntu x64, using Eclipse-CDT.  I'm basically doing a hello world and linking to a commerical 3rd party library.</p>
  
  <p>I've included the header files, linked to their libraries, but I still get linker errors.  Are there some possible problems here other than the obvious (e.g. I am 99% sure I'm linking to the correct library).</p>
  
  <ol>
  <li>Is there a way to confirm the static libraries I am linking to are 64bit?</li>
  <li>Is there a way to confirm that the library has the class (and methods) I am expecting it to have?</li>
  </ol>
  
  <p>Eclipse says:</p>
  
  <pre>
  Building target: LinkProblem
  Invoking: GCC C++ Linker
  g++ -L/home/notroot/workspace/somelib-3/somelib/target/bin -o"LinkProblem"  ./src/LinkProblem.o   -lsomelib1 -lpthread -lsomelib2 -lsomelib3
  ./src/LinkProblem.o: In function `main':
  /home/notroot/workspace/LinkProblem/Debug/../src/LinkProblem.cpp:17: undefined reference to `SomeClass::close()'
  ./src/LinkProblem.o: In function `SomeOtherClass':
  /home/notroot/workspace/somelib-3/somelib/include/sql/somefile.h:148: undefined reference to `SomeClass::SomeClass()'
  /home/notroot/workspace/somelib-3/somelib/include/sql/somefile.h:148: undefined reference to `vtable for SomeOtherClass'
  /home/notroot/workspace/somelib-3/somelib/include/sql/somefile.h:151: undefined reference to `SomeClass::~SomeClass()'
  ./src/LinkProblem.o: In function `~SomeOtherClass':
  /home/notroot/workspace/somelib-3/somelib/include/sql/somefile.h:140: undefined reference to `vtable for SomeOtherClass'
  /home/notroot/workspace/somelib-3/somelib/include/sql/somefile.h:140: undefined reference to `SomeClass::~SomeClass()'
  /home/notroot/workspace/somelib-3/somelib/include/sql/somefile.h:140: undefined reference to `SomeClass::~SomeClass()'
  collect2: ld returned 1 exit status
  make: *** [LinkProblem] Error 1
  </pre>