ObjectSpace V2.1 installation status at CERN


Last update - 6th December 1999. Shortcuts to: Compiling and linking, Platforms and libraries, Known bugs and problems, Fixed problems, Objectivity/DB and persistent STL, Local installation tips

Compiling and linking with ObjectSpace ToolKit

ObjectSpace ToolKit V2.1 is installed in AFS directory /afs/cern.ch/sw/lhcxx/specific/@sys/ObjectSpace/2.1/ToolKit. There are several flavours of the ObjectSpace libraries, depending on which compile-time options were used to create them. In general, the name of the library indicates what options were used, e.g. libospace.st.a is a single-threaded version and libospace.mt.a is multi-threaded. altstd means that the ToolKit has been compiled with compiler native STL. The full list of the libraries currently available is given below. 

The easiest way to use these libraries is to include the right configuration file into your Makefile. Configuration files can be found in $(TOOLKIT)/config directory. There is a separate file for each library type, e.g. define.st.cfg for libospace.st.a. Including the right configuration file ensures that your program is compiled with the same options as the library was. Here are some of the variables defined by each configuration file:

  TOOLKIT - ToolKit installation directory
  CC_EXEC - the compiler executable name
  CC_DEFINES - preprocessor symbols
  CC_FLAGS - additional flags for the compiler
  CC_EH - switches needed for exception handling
  CC_MT - switches needed to use multi-threading
  OLIBS - ObjectSpace library name (in the -lospace form)

Example use in a Makefile:

 include $(TOOLKIT)/define.st.cfg
 C_FLAGS = $(CC_DEFINES) $(CC_FLAGS) $(CC_EH) $(CC_MT) 
 %.o : %.cpp
        @echo compiling $*.cpp ...
        @${CC_EXEC} -c $*.cpp ${C_FLAGS} -o $*.o
 exec: $(OBJS)
        ${CC_EXEC} $(OBJS) -L{TOOLKIT}/lib $(OLIBS) -o exec
 
back to top of page  


Platforms and libraries

back to top of page  


Known bugs and problems

back to top of page  


Fixed bugs

back to top of page


Objectivity/DB and persistent STL

Objectivity/DB provides persistent and transient STL collection classes. They are implemented on the base of ObjectSpace ToolKit STL. An Objectivity application using persisten STL will automatically get the transient part as well. It is possible to use the "full" ObjectSpace ToolKit in such an application, but following conditions have to be met:


Local installation tips

ToolKit installation kits are available from the LHC++ export area (see access rules). But the recommended way is to take (also from the export area) the zip/tar file containing a copy of CERN installation and unpack it to a local disk.


CERN Program Library