Installing Fink Cernlib And G77 For Mac



To build cernlib from the source files you need to install, the imake command, the motif and the compatibility libraries. $ su # apt-get update # apt-get install imake openMotif-devel Libcompat # apt-get clean If you just want to use precompiled binary packages, go directly to Installation subsection. CERNLIB-2006 Building Procedure. おぉ。CernibがMACで走るっすか。やるっすね。 Installing Fink, CERNLIB, and g77 for Mac OS X 次はこれを見つけた。というわけでやってみよう。 これに従って、Fink Commandarを立ち上げて、 cernlibを探して左上の青いプラスマークのアイコンを押して10分くらいまった。. Hi All, Just wondering how I would install (or where to place) new libraries that I would like to include into my programming. Also does anyone know how I can get the function 'plot' to work in the unix shell. It works on PC's, but I can't seem to get it to work with the mac yet. Mac: install the binary using fink and set qhull='/src/bin/'. For intel macs the compiler is g77-intel-bin.tar.gz - installation instructions are given on that web. Fink now has a working version of gfortran. To get it, you must install the fink gcc43 package. Another option is g95, and this can often be used as a drop-in replacement for g77. For example, I was able to get fftw, pgplot, and a few other things that required g77 to compile and work with g95, just by doing a global search and replace.

Preparation:lapack

Installing Fink Cernlib And G77 For Mac Osx

Notice that as of CERNLIB v.2001, lapack routines have been removedfrom mathlib. You thus need to install the lapack and blas libraries.In addition if you want to use paw++, you need OpenMotif libraries:
$ su
# apt-get update

# apt-get install lapack blas openMotif-devel Libcompat
# apt-get clean
If you just want to use precompiled binary packages, go directly to Installation subsection.

CERNLIB-2006Building Procedure

Compilation Conditions
MacOS X Release 10.4
gcc-4.2.0-svn20061005b
Libcompat-14.1-2f
lapack-3.0-26d
blas-3.0-26d
openMotif-2.3.0-10.4osx2
Noticethat as of CERNLIB v.2001, lapack routines have been removed frommathlib.One thus needs to install the lapack and blas libraries as indicatedabove.My gfortran-related changes have been sent to a CERNLIB maintainerand adopted in CERNLIB v.2006 so the building of CERNLIB on MacOS Xis now fairly straightforward.

[0] Preparation

In the following, <somewhere> stands for a directory intowhich you downloaded necessary tarballs or patches, while <username> means your login name. Replace them as needed according toyour environment.

# cd /
# rm cern
# mkdir /Users/cernlib
# ln -s /Users/cernlib cern
# cd /cern
# for i in `ls <somewhere>/src_*.tar.gz`; do tar -zxvf $i; done
# ln -s 2006 new

# ln -s 2006 pro
# mkdir -p 2006/work
# chown <user name> 2006/work
# chown <user name> 2006
# cd 2006/src
# patch -p1 -s < <somewhere>/cernlib-2006-macosx10.4.patch
# exit
where the patch is to work around some minor remaining problems.

[1] Build

$ cd /cern/2006/
$ mkdir lib

$ ln -s /usr/local/lib/liblapack.a lib/liblapack3.a
$ ln -s /usr/local/lib/libblas.a lib/.

$ cd work

$ export CVSCOSRC=/cern/2006/src
$ mkdir ../bin

$ cp $CVSCOSRC/scripts/cernlib ../bin/
$ $CVSCOSRC/config/imake_boot
$ mkdir ../logs

$ make tree HAVE_MOTIF='YES' >& ../logs/tree.log &
$ tail -f ../logs/tree.log
^C
$ pushd packlib/kuip/programs/kuipc
$ make
$ make install.bin
$ popd
$ make HAVE_MOTIF='YES' >& ../logs/make.log &

$ tail -f ../logs/make.log
^C
$ cd packlib

$ make install.bin HAVE_MOTIF='YES' >&../../logs/packlib.bin.log &
$ tail -f ../../logs/packlib.bin.log
$ cd ../pawlib

$ make install.bin HAVE_MOTIF='YES' >&../../logs/pawlib.bin.log &
$ tail -f ../../logs/pawlib.bin.log
$ cd ../graflib

$ make install.bin HAVE_MOTIF='YES' >&../../logs/graflib.bin.log &
$ tail -f ../../logs/graflib.bin.log
$ cd ../scripts

$ make install.bin HAVE_MOTIF='YES' >&../../logs/scripts.bin.log &
$ tail -f ../../logs/scripts.bin.log
$ cd ..
$ make install.include CERN_INCLUDEDIR=/cern/new/include
>& ../logs/install.include.log &
$ tail -f ../logs/install.include.log

[2] Tests

$ cd packlib
$ make test >& ../../logs/packlib.test.log &
$ tail -f ../../logs/packlib.test.log
ALL TESTS PASSED
$ cd ../mathlib
$ make test >& ../../logs/mathlib.test.log &
$ tail -f ../../logs/mathlib.test.log
ALL TESTS but C208 and C327 PASSED
$ cd ../graflib/higz/examples
$ make higzex
$ ./higzex
OK!
$ cd ../../../../src/pawlib/paw/demo
$ paw all.kumac
...
go
...
OK!
$ cd ../../../../work/mclibs
$ make test >& ../../logs/mclibs.test.log &
$ tail -f ../../logs/mclibs.test.log
ALL but theISAJET test PASSED
$ cd ../phtools
$ make test >& ../../logs/phtools.test.log &
$ tail -f ../../logs/phtools.test.log
ALL TESTSPASSED
$ cd ../geant321

$ make test >& ../../logs/geant321.test.log &
$ tail -f ../../logs/geant321.test.log
ALL TESTSPASSED
1. Mathlib problem with C208 (quartic equation solver) is new and isdue to csqrt in libm: csqrt selects the solution for the return valueby looking at the sign of the imaginary part of the argument, whichcauses some unexpected behavior like:

Installing Fink Cernlib And G77 For Mac

where I expect naively that both of z1 and z2 to be (0, 1). Thequartic equation solver (drteq4) returns correct solutions but indifferent order because of this behavior.

G77

2. Mathlib problem with C327 has been there since 10.3, a precisionproblem for modified Bessel functions (tsbvsl).

3. Mclibs problem with isajet has been there since 10.3 butoverseen, since the nonzero exit code from g77's stop statement has notbeen treated as an error unlike gfortran.

Installing fink cernlib and g77 for mac download

Installation of Binary Packages

CERNLIB

# apt-get update
# apt-get install cernlib
# apt-get clean

# ln -s 2006 /cern/pro

By default cernlib will be installed under /cern. Add /cern/pro/binto your PATH in order to use PAW, PAW++, etc.

Dis45

# apt-get update
# apt-get install dis45
# apt-get clean

Topdrawer

# apt-get update
# apt-get install tdr
# apt-get clean

Installing Fink Cernlib And G77 For Macbook Pro

or
# apt-get update
# apt-get install topdraw
# apt-get clean

Installing Fink Cernlib And G77 For Mac Os

Back to Keisuke Fujii's HEP on X Pagekeisuke.fujii@kek.jp October 10, 2006