Thanks, I have solved my initial problem, but now I have a different issue, not necessarily related to C++.
I have a third party static library I would like to link with in my shared library. The static library alone is about 78K in size. Is there anyway I can do this in my shared library. Everything I have tried gives me either "more than code segment" errors or "illegal single segment references". Any ideas? "Ben Combee" <[EMAIL PROTECTED]> wrote in message news:84376@palm-dev-forum... > > In article <84342@palm-dev-forum>, [EMAIL PROTECTED] says... > > > > I cannot find reference to this anywhere, but is it possible to use C++ > > files in a Shared Library? It seems when I start to add cpp files to my > > Shared Library project I get a linker error: > > > > Link Error : __RuntimeModule__: Entry Point '__InitCode__' is undefined. > > > > Can I combine both C and C++ files in a Shared Library? > > C++ code isn't going to work very well in a shared library? > > Why? Here's three reasons: > > 1) Shared libraries don't have global variables, so no virtual function > tables, exceptions, or RTTI. > > 2) Calls into shared library routines have a required first parameter > that is the library reference number. C++ method calls have an implicit > first parameter than is the this pointer. Result: C++ methods can't be > exported as shared library calls. > > 3) Shared libraries aren't initialized through the CodeWarrior runtime. > No static object initialization, and since there are no globals, no > stack of objects to destroy when the library is closed. (This is the > source of the __InitCode__ error you're seeing above). > > You can use C++ source files with a shared library, but some of the > language features just don't get along well with the shared library > runtime model. > > -- > Ben Combee <[EMAIL PROTECTED]> > CodeWarrior for Palm OS technical lead > Get help at http://palmoswerks.com/ > > -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
