Installmostly NOT UPDATED to bookCRY Installation/tuning of PAWIt is warmly suggested that you create a .pawlogon.kumac in your home directory. The most needed thing is the macro/default, that should contain the path to the kumacs distributed with book95. Here follows my personal ~/.pawlogon.kumac. Please consider that it may not fit your needs/preferences. macro/default '.,~/kumac,/cern/kumacs' A graphics/option zfl graphics/option file graphics/option hsta graphics/option stat n/cut $1 dc2x>-14&&dc3x>-14&&dc4x>-14 n/cut $2 dc1x>-14&&dc1y-14&&dc2x>-14&&dc2y>-14&&dc3x>-14&&dc3y>-14 n/cut $3 pe>0&&pe<300 n/cut $4 abs(thxin)<.0002&&abs(thyin)<.0002 Getting the program:The source code is available directly from the CERN WWW server. It consists of one tar-gzip'ed file, dumread.tgz, that contains surce code for both Linux and HP/UX. Contents of dumread.tgzSource code:
Other files
Installation: UPDATEDUnpack the file in a directory of your choice using : Needed to compile this program:f2c (Fortran to C translator; any version, i think) cc (C compiler, any ANSI version, i think; i use GNU gcc) GNU make (any version, i think) f2c is needed to create the include file that interfaces Fortran code to C (see inc2h); actually, the real compilation of the Fortran code could be made with a real Fortran 77; i'll test this as soon as i'll have g77, the GNU F77 compiler. Book95 has been tested on Linux (with gcc v2.6.3 and v2.7.0) and on HP-UX (with HP cc). Compiling:The first timecd to the directory where you have installed the source code and run The MakefileThe relevant part of the Makefile is the following: ifeq ($(OSTYPE),Linux) CC = gcc GNU = true else # this probably represents a "worst possible case": hhpfi2.fi.infn.it CC=cc # no gcc, damn! CFLAGS+= -Aa # i need ANSI C CERNROOT=/users/cernlib/new # not really the proper place ! LD=f77 # odd, but it works... F2CPATH=$(HOME)/bin # my system manager didn't install F2C, i did it myself. STDLIBS+= -lcl # adds the F77 libraries when then F2C libs don't include them FCPPFLAGS= -P # some (old?) versions of f2c do not like the "line" information # written by cpp # LDFLAGS= -v endif As you can see, it uses the environment variable OSTYPE to recognize a Linux system, that needs less special settings. The non-Linux part is made for an HP-UX with no gcc compiler and a user-installed f2c, and a non-standard path for the CERNLIBS If you have non-standard paths for include files, these should be added to CFLAGS with -I in front. The addictional paths for the libraries should go in LDFLAGS and addictional libraries should be added to STDLIBS The definitions made are then used to set up the real things: ifneq ('$(F2CPATH)','')
CFLAGS+= -I$(F2CPATH) STDPATH+= -L$(F2CPATH) endif ifneq ($(CC),gcc)
endif ifeq '$(CERNLIB)' ''
endif hbooklib = -L$(CERNLIB) -lpacklib LOADLIBES=$(hbooklib) $STDPATH $(STDLIBS) -lm ifeq '$(test)' 'true'
endif The "test" flag (than you can set as an exported environment variable or with make -Dtest=true is only usefuls for debugging of the base code (the .c files) when one doesn't need to create an N-tuple. Hopefully, you will not need this. |