ROOT on MacOS X

Note that I have not yet tried to prepare a custom kernel with SysV semaphore support. The resultant root build thus lacks some functionality.
By the way as of ROOT v.3.01.05, MacOS X is officially supported. So now building "ROOT" is fairly straightforward, though the versions earlier than v.3.02.02 needed some patches to build on MacOS X Release 10.1: basically what you needed to do is to add -flat_namespace to link flags. The current version (v.3.02.03) just compiles out of the box.  There were a lot of troubles before we reached this stage. See this note for more details.

[1] Compilation Conditions

 MacOS X Release 10.1
 standard Mach Kernel (Darwin 1.4) w/o SysV semaphore patch
 gcc-with-g77-932.1-1a
 libdl.dylib: dlcompat-20010123-2a by Christoph Pfisterer
 XFree86 4.1.0
 freetype-*1.3.1-3a
[2] Compilation Procedure

If you want to use the current CVS tree, do

$ export CVSROOT=:pserver:cvs@root.cern.ch:/user/cvs
$ cvs login
(Logging in to cvs@root.cern.ch)
CVS password: cvs
$ cvs -z3 checkout root

or if you just want to use the production version, do

$ tar -zxvf ../orig/root_v3.02.03.source.tar.gz

then follow the steps below:

$ tar -zxvf ../orig/ttf_1.1.tar.gz
$ su
# mv ttf/fonts /usr/share/fonts/ttf
# pushd /cern/pro/lib
# ln -s libpythia6134.a libPythia.a
# exit
$ cd root
$ export ROOTSYS=`pwd`
$ export DYLD_LIBRARY_PATH=$ROOTSYS/lib
$ export PATH=$ROOTSYS/bin:$PATH
$ patch -p1 -s < <somewhere>/root_v3.02.03-macosx-test.patch
$ patch -p1 -s < <somewhere>/root_v3.01.04-macosx-aclock.patch
$ ./configure macosx
$ make

According to the directory change for ttf fonts, edit ~/.rootrc as:

#Unix.*.Root.TTFontPath:     $(ROOTSYS)/ttf/fonts
Unix.*.Root.TTFontPath:     /usr/share/fonts/ttf

A prebuilt binary package of root_v3.02.01 is available from here.


Back to Keisuke Fujii's HEP on X Page
fujiik@jlcuxf.kek.jp March 18, 2001