Can't link aa shared library under Mac OS-X

Hi,
I am trying to produce a shared library for a Babar package but the link step fails with:

Running rootcint
Compiling RooFitBabarCint.cc
Making tmp//libRooFitBabar.so
g++ tmp//objects//Roo2DHistPdf.o tmp//objects//Roo3BodyCKPiE791.o tmp//objects//RooArgusFNC.o tmp//objects//RooBCPDalitzDecay.o tmp//objects//RooBCPGenFit.o tmp//objects//RooBCPGenFitMaster.o tmp//objects//RooBCPSin2BetaDecay.o tmp//objects//RooBCPSin2BetaDecayCS.o tmp//objects//RooBCPSin2bgDecay.o tmp//objects//RooBCPTFit.o tmp//objects//RooBCPTFitMaster.o tmp//objects//RooBCPTGenDecay.o tmp//objects//RooBGmm.o tmp//objects//RooBifurCB.o tmp//objects//RooBifurErf.o tmp//objects//RooBifurErfExp.o tmp//objects//RooCPMixFit.o tmp//objects//RooCruijff.o tmp//objects//RooCustom.o tmp//objects//RooDMixDecayHadronic.o tmp//objects//RooDToKsPiPiIsobar.o tmp//objects//RooDircPdf.o tmp//objects//RooDircShape.o tmp//objects//RooDoubleCB.o tmp//objects//RooDstDstMmBG.o tmp//objects//RooErf.o tmp//objects//RooErfPowArgus.o tmp//objects//RooExpToPolyPlusConst.o tmp//objects//RooFFAccCorrec.o tmp//objects//RooFormFactor.o tmp//objects//RooGExp.o tmp//objects//RooGaurun.o tmp//objects//RooLikeCutPlot.o tmp//objects//RooOsipDisc.o tmp//objects//RooTripleGaussian.o tmp//objects//RooULCalc.o tmp//objects//RooFitBabarCint.o -shared-libgcc -o tmp//libRooFitBabar.so
/usr/bin/ld: Undefined symbols:
_main
RooAbsReal::attachToTree(TTree&, int)
RooAbsReal::fillTreeBranch(TTree&)
RooAbsReal::readFromStream(std::basic_istream<char, std::char_traits >&, bool, bool)
RooAbsReal::selectNormalization(RooArgSet const*, bool)
RooAbsReal::setTreeBranchStatus(TTree&, bool)
RooAbsReal::selectNormalizationRange(char const*, bool)
RooAbsReal::maxVal(int)
RooAbsReal::copyCache(RooAbsArg const*)
RooAbsReal::operator==(RooAbsArg const&)

Most likely the link options are not the correct ones for the architecture, does anybody know which are the appropriate one?

My system is the following:
Darwin dyninside25.lnf.infn.it 8.8.2 Darwin Kernel Version 8.8.2: Thu Sep 28 20:43:26 PDT 2006; root:xnu-792.14.14.obj~1/RELEASE_I386 i386 i386

the compiler version is :
dyninside25:~/analisi/RooFitBabar> gcc -v
Using built-in specs.
Target: i686-apple-darwin8
Configured with: /private/var/tmp/gcc/gcc-5363.obj~28/src/configure --disable-checking -enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.0/ --with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/lib --build=powerpc-apple-darwin8 --with-arch=nocona --with-tune=generic --program-prefix= --host=i686-apple-darwin8 --target=i686-apple-darwin8
Thread model: posix
gcc version 4.0.1 (Apple Computer, Inc. build 5363)

The version of ROOT that I have is:


  •                                     *
    
  •    W E L C O M E  to  R O O T       *
    
  •                                     *
    
  • Version 5.14/00 14 December 2006 *
  •                                     *
    
  • You are welcome to visit our Web site *
  •      [root.cern.ch](http://root.cern.ch)            *
    
  •                                     *
    

FreeType Engine v2.1.9 used to render TrueType fonts.
Compiled on 15 December 2006 for macosx with thread support.

CINT/ROOT C/C++ Interpreter version 5.16.16, November 24, 2006

thank you for any help.

Riccardo

Hi,

you’re not telling g++ to build a shared library.

Cheers, Axel.