INSTALL

Prerequisite

Pasteup is written in C and Tcl, and uses 3 Tcl extensions ( Tk, BLT and tkImg), and GD library. All these are mandatory for installing and running Pasteup.

The required versions are,

All these softwares are open source and you can freely use them. Some recent major linux distributions (such as ubuntu, debian and gentoo linux) provide binary package (or portage file of gentoo) of these softwares. You can use the official packages provided by the linux distributor or the community. If you cannot find any packages for your distribution (or for your UNIX OS), you have to compile the above softwares for yourself; generally, it is not so difficult to compile them from source codes.

We can use several external seismic analysis application softwares, such as SU, raytracing and traveltime mapping, through the Pasteup. But these external seismic applications are not mandatory, and you can install Pasteup without these applications. If needed, you can add these external seismic applications after installing the Pasteup.

Build

After installing mandatory softwares, you can build the pasteup by the following procedure.
In this document, "$" represents a shell prompt.

  1. Generate "Makefile" and "pasteup.tcl" files for your system.
     $ ./configure
     
  2. Build a library "libpasteup.so" and a main script "pasteup".
     $ make
     
  3. Install pasteup under "/usr/local" tree.
     $ make install
     

Probably you need "root" privilege in the last step.
If you want to install pasteup in other directories, or if you have some troubles, see below.

some more configurations

Use pasteup in the build directory

To use pasteup in the build directory, type

$ ./configure
$ make packagedir=`pwd`

You don't have to run "make install".

Give some information to the "./configure" scripts

See the following example.

  1. Change install directory from "/usr/local" to your home directory.
     $ ./configure --prefix=$(HOME)
          
  2. Change C compiler flags. Default CFLAGS="-g -O2 -fPIC -L$(prefix)/lib -I$(prefix)/include".
     $ CFLAGS="-O1" ./configure
          
  3. Specify paths for libraries and header files.
     $ ./configure --libdir=/foo/bar/lib --includedir=/foo/bar/include
          
  4. a little complex example...
     $ LD_LIBRARY_PATH=/foo/bar/lib ./configure --libdir=/foo/bar/lib --includedir=/foo/bar/include
          

Typical environment variables associated to the configurations are,

For detail, type

$ ./configure --help

or see the autoconf manual.

If the "configure" fails...

There are plenty of possible reasons why the "configure" script fails.
First, consult "config.log" file, which is a result of "configure". This file contains the reason of failure.

If necessary, edit the "configure.in" file and re-generate the "configure" script by

$ autoconf

The "configure.in" file is written for autoconf version 2.61. Therefore, if your system has older version of "autoconf", "autoconf" might fail. In such a case, edit the configure.in, or upgrade your autoconf.