Re: [ROOT] Re: Compiling root on MacOS X 10.2 (jaguar)

From: Rene Brun (Rene.Brun@cern.ch)
Date: Wed Sep 25 2002 - 22:39:50 MEST


This is a call for comments to the macosx community.

Can we assume that all macosx users will convert to 10.2?
Who wants support for 10.1? for how long?
We have 3 options:
  A- move to 10.2 only with the changes now in CVS by Mayly Sanchez
  B- ignore 10.2 and revert to the Makefile version of yesterday
  C- support two macosx versions

Please indicate your preferences. In the absence of reactions we will 
choose solution A.

Rene Brun


On 25 Sep 2002, Fons Rademakers wrote:

> The change in cint/Module.mk is not correct for 2.x gcc. In principle
> the system should detect that it has gcc 3 available and then replace
> libstrm with gcc3strm.
> 
> Mayly could you investigate why the GCC_MAJOR is not 3 on macosx in
> cint/Module.mk.
> 
> Cheers, Fons.
> 
> 
> 
> On Wed, 2002-09-25 at 17:09, Rene Brun wrote:
> > Hi Maily,
> > 
> > Your proposed changes are now in CVS.
> > If I understand your mail correctly, your changes should be OK
> > for gcc2.9x and gcc3.x.
> > 
> > Rene Brun
> > 
> > On Wed, 25 Sep 2002, Mayly Sanchez wrote:
> > 
> > > 
> > > Hi Rene,
> > > thank you for applying my changes so quickly.  As for makelib.sh
> > > yes, -install_name should be omitted when the -bundle flag is
> > > used since this is not accepted by gcc3 although it was fine
> > > with gcc2.  The other change in those lines (my mistake I didn't write  
> > > it in that
> > > email)  is that the  first $BUNDLE variable changes to $LIB, the reason  
> > > being that
> > > $LIB= library.dylib
> > > $BUNDLE=library.so
> > > the -bundle line is used to create a .so from .dylib, if you don't do  
> > > this it will
> > > fail with an error because the .so file is missing in the creation of a  
> > > .so
> > > 
> > > The proposed change in the current CVS would be then:
> > >     echo $LD $opt -bundle -flat_namespace -undefined suppress $LIB \
> > > -o $BUNDLE -ldl $OBJS $EXTRA
> > >     $LD $opt -bundle -flat_namespace -undefined suppress $LIB \
> > >   -o $BUNDLE -ldl $OBJS $EXTRA
> > > 
> > > Mayly
> > > 
> > > On Wednesday, September 25, 2002, at 03:01  AM, Rene Brun wrote:
> > > 
> > > > Hi Mayly,
> > > >
> > > > I have applied your change (replace libstrm by gcc3strm) in  
> > > > cint/Module.mk
> > > >
> > > > However, your proposed change in build/unix/makelib.sh clashes with
> > > > the current version in CVS that contains nearly what you propose.
> > > > In the current CVS, we have:
> > > >
> > > >    echo $LD $opt -bundle -flat_namespace -undefined suppress  
> > > > -install_name
> > > > $BUNDLE -o $BUNDLE -ldl $OBJS $EXTRA
> > > >    $LD $opt -bundle -flat_namespace -undefined suppress -install_name
> > > > $BUNDLE \
> > > >       -o $BUNDLE -ldl $OBJS $EXTRA
> > > >
> > > > In your proposed cgange, the "-install_name" is omitted.
> > > > Could you clarify this point?
> > > >
> > > > Rene Brun
> > > >
> > > > On Wed, 25 Sep 2002, Mayly Sanchez wrote:
> > > >
> > > >> Hi,
> > > >> I just attempted to compile root on the new MacOS X version 10.2
> > > >> (jaguar).
> > > >> The new developer tools that come with it have gcc 3.1, so in order
> > > >> to make it work I had to make a few changes, which I hope that
> > > >> you will find the time to integrate them into the next release.
> > > >>
> > > >> First, I have obtained all the dependencies from fink:
> > > >> http://fink.sourceforge.net
> > > >> following the specific instructions for 10.2, they are:
> > > >> g77, dlcompat, XFree86 and freetype.
> > > >> Note that these are installed under /sw it would be nice that root  
> > > >> would
> > > >> look for these things in there. In the meantime I have made a link  
> > > >> from
> > > >> ln -s /sw/lib /usr/local/lib
> > > >> ln -s /sw/include /usr/local/include
> > > >>
> > > >> I downloaded the cernlibs from
> > > >> http://www-jlc.kek.jp/~fujiik/macosx/10.1.X/
> > > >> Note I didn't compile them. The difference between g77-2.95 and  
> > > >> g77-3.x
> > > >> doesn't seem too big but you are better off compiling it following the
> > > >> instructions
> > > >> there and doing it yourself.  Set CERNDIR and CERNLIB as usual.
> > > >>
> > > >> Download ttf fonts and untar them in /usr/share/fonts.
> > > >> Download the root source (this works with 3.03.09) and untar on the
> > > >> desired
> > > >> location. Set ROOTSYS, DYLD_LIBRARY_PATH, etc as usual.
> > > >>
> > > >> Now these are the changes needed to make it compile. I have  
> > > >> substituted
> > > >> the options for macosx 10.1.x but probably it needs to be added as
> > > >> a separate option.
> > > >> Edit file $ROOTSYS/cint/Module.mk and go down until you find
> > > >> (ignore the < and > symbols):
> > > >> < ifeq ($(PLATFORM),macosx)
> > > >> < CINTS2       += $(MODDIRS)/libstrm.cxx
> > > >> < endif
> > > >> change it to:
> > > >>> ifeq ($(PLATFORM),macosx)
> > > >>> CINTS2       += $(MODDIRS)/gcc3strm.cxx
> > > >>> endif
> > > >>
> > > >> Next, edit file $ROOTSYS/build/unix/makelib.sh and go to block with:
> > > >> elif [ $PLATFORM = "macosx" ]; then
> > > >> The following lines:
> > > >> <   echo $LD $opt -bundle -flat_namespace -undefined suppress
> > > >> -install_name $LIB \
> > > >>   -o $BUNDLE -ldl $OBJS $EXTRA
> > > >> <   $LD $opt -bundle -flat_namespace -undefined suppress -install_name
> > > >> $LIB \
> > > >>        -o $BUNDLE -ldl $OBJS $EXTRA
> > > >> have to be modified to:
> > > >>>   echo $LD $opt -bundle -flat_namespace -undefined suppress $BUNDLE \
> > > >> -o $BUNDLE -ldl $OBJS $EXTRA
> > > >>>   $LD $opt -bundle -flat_namespace -undefined suppress $BUNDLE \
> > > >>     -o $BUNDLE -ldl $OBJS $EXTRA
> > > >>
> > > >> The reason for the change is best explained here:
> > > >> http://fink.sourceforge.net/doc/porting/preparing.php#gcc3
> > > >>
> > > >> Well that's it, ./configure macosx. I haven't tested it throughly but
> > > >> the demos,
> > > >> the tests and my old macros seem to work.
> > > >>
> > > >> If you have any questions or comments please write directly to me  
> > > >> since
> > > >> I'm not subscribed to the list. I'm placing the binary here:
> > > >> http://mixcoatl.phy.tufts.edu/msanchez/root/ 
> > > >> root_v3.03.09_jaguar.tar.gz
> > > >>
> > > >> Mayly
> > > >>
> > > 
> -- 
> Org:    CERN, European Laboratory for Particle Physics.
> Mail:   1211 Geneve 23, Switzerland
> E-Mail: Fons.Rademakers@cern.ch              Phone: +41 22 7679248
> WWW:    http://root.cern.ch/~rdm/            Fax:   +41 22 7679480
> 



This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:11 MET