Hi Anitha, Your example code did not compile for me. It appears incomplete. I fixed your code up, and it worked just fine on my system. It appears that child.cc, main.cc, nor base.cc have any #include statements. They use cout, but I do not see any using std::cout; and using std::endl; statements. I see that child is derived from base, but base does not exist as specified. XYZ::base exists, but that's not what the code uses. I don't see where load_libmem is defined. I don't see where base.cc is being compiled. I don't see where main.cc is being compiled. Could you provide a short complete compilable code example, including the command line you used to compile each of the files. You are using GCC 3.2.3 on i686. Any particular operating system, or doesn't it matter to you? If it doesn't matter, let's use GNU/Hurd. Thanks, --Eljay