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

From: Mayly Sanchez (msanchez@minos.phy.tufts.edu)
Date: Wed Sep 25 2002 - 16:35:58 MEST


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
>>



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