Re: [ROOT] static version of root libraries

From: Rene Brun (Rene.Brun@cern.ch)
Date: Thu Dec 20 2001 - 15:50:02 MET


Hi Christian,

In the attachement, you will find a file "install_roota" that you can use
as a prototype to link statically with the ROOT library.
This script builds a static executable called "roota" out of:
 - an archive library libRoot.a containing all ROOT classes
 - several *.o files to force linking of all classes.

In your case, if you run in batch, you can eliminate several G__*.o files
concerning graphics, viewers, etc.

Rene Brun

Christian Schmitt wrote:
> 
> Hi Rooters,
> 
> is it possible to build static versions of the root libraries (i.e. libCore.a
> instead of or in addition to libCore.so).
> The reason why I need this is that we use condor as a batch system and
> therefore we need a statically linked executable of our analysis program
> (which can then be run on any computer at the university).
> 
> Is there an easy switch I have to set (for example in the configure script or
> in the Makefile itself ?).
> 
> Regards,
> 
>         Christian

/bin/rm roota
/bin/rm libRoot.a
ar rv libRoot.a \
base/src/*.o \
cint/src/*.o \
clib/src/*.o \
cont/src/*.o \
eg/src/*.o \
g3d/src/*.o \
gl/src/*.o \
gpad/src/*.o \
graf/src/*.o \
gui/src/*.o \
hist/src/*.o \
histpainter/src/*.o \
html/src/*.o \
matrix/src/*.o \
meta/src/*.o \
minuit/src/*.o \
net/src/*.o \
new/src/*.o \
physics/src/*.o \
postscript/src/*.o \
proof/src/*.o \
pythia/src/*.o \
pythia6/src/*.o \
rfio/src/*.o \
rint/src/*.o \
star/src/*.o \
thread/src/*.o \
tree/src/*.o \
treeplayer/src/*.o \
treeviewer/src/*.o \
tree/src/*.o \
tree/src/*.o \
unix/src/*.o \
x11/src/*.o \
x11ttf/src/*.o \
x3d/src/*.o \
zip/src/*.o 
#g++ -o roota -Wl,-Map roota.map \
echo 'void G__globalsetup() {}' >globalsetup.c
gcc -c globalsetup.c
g++ -o roota \
$ROOTSYS/main/src/rmain.o \
globalsetup.o \
$ROOTSYS/base/src/TROOT.o \
$ROOTSYS/base/src/G__*.o \
$ROOTSYS/cont/src/G__*.o \
$ROOTSYS/eg/src/G__*.o \
$ROOTSYS/g3d/src/G__*.o \
$ROOTSYS/gpad/src/G__*.o \
$ROOTSYS/graf/src/G__*.o \
$ROOTSYS/gui/src/G__*.o \
$ROOTSYS/hist/src/G__*.o \
$ROOTSYS/histpainter/src/G__*.o \
$ROOTSYS/html/src/G__*.o \
$ROOTSYS/matrix/src/G__*.o \
$ROOTSYS/meta/src/G__*.o \
$ROOTSYS/minuit/src/G__*.o \
$ROOTSYS/net/src/G__*.o \
$ROOTSYS/physics/src/G__*.o \
$ROOTSYS/postscript/src/G__*.o \
$ROOTSYS/rint/src/G__*.o \
$ROOTSYS/tree/src/G__*.o \
$ROOTSYS/treeplayer/src/G__*.o \
$ROOTSYS/unix/src/G__*.o \
$ROOTSYS/x11/src/G__*.o \
$ROOTSYS/x3d/src/G__*.o \
$ROOTSYS/libRoot.a \
/usr/X11R6/lib/libXpm.a /usr/X11R6/lib/libX11.a  -lm -ldl  -static



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:51:13 MET