[ Download | FAQ | Tutorial | Sourceforge ]
Welcome to the home of SOMELib
SOMELib is an evolving simple inprocess C++ dynamic object loader that works under multiple operating systems. SOMELib can take any existing C++ class that has a pure virtual interfaces and allow you to load them up dynamically at runtime instead of compile time. This allows for the creation of C++ plugin systems where a developer creates a pure virtual plugin interface which other programmers then implement to extend the functionality of the original program. C programmers have had this functionality for a long time now through the use of libdl under Unix and LoadLibrary calls under Windows. SOMELib extends this functionality to C++ while giving the user extra functionality in order to better manage the construction and maintenance of a large number of classes.
quinticent - 2001-07-19 07:59 - SOMELib
Thanks to Nathan Doss SOMELib now builds on Solaris. Now we support Linux, BSD, Solaris, HP-UX and Windows.
Windows and addClass
sosedada - 2001-06-27 11:15 - SOMELib
I finally got around to getting SOMELib to work on Windows after the restructuring.
An additional thing I haven't mentioned yet is that LibFactory now has an addClass() function. This is for having "built-ins" (as opposed to plug-ins). This way, you could have some default classes already in your executable, but access them as though they were dynamically loaded.
HP-UX fixed after restructuring
sosedada - 2001-05-16 15:39 - SOMELib
HP and g++ appear to have problems with shared_libs containing static data. I removed the statics from ClassCatalog for HP
sosedada - 2001-05-14 15:53 - SOMELib
I have made a new CVS module name SOMELib. some0-5 is now defunct.
sosedada - 2001-01-11 10:31 - SOMELib
SOMELib now works on HP-UX version 10.20 with gcc. This fix has not made it into a release, but CVS should be working well. Our next release will include fixes for Windows.