File: Installation.py

package info (click to toggle)
esys-particle 2.1-4
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 7,284 kB
  • sloc: cpp: 77,304; python: 5,647; makefile: 1,176; sh: 10
file content (110 lines) | stat: -rw-r--r-- 4,260 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#############################################################
##                                                         ##
## Copyright (c) 2003-2011 by The University of Queensland ##
## Earth Systems Science Computational Centre (ESSCC)      ##
## http://www.uq.edu.au/esscc                              ##
##                                                         ##
## Primary Business: Brisbane, Queensland, Australia       ##
## Licensed under the Open Software License version 3.0    ##
## http://www.opensource.org/licenses/osl-3.0.php          ##
##                                                         ##
#############################################################
__docformat__ = "restructuredtext en"

import esys.lsm.doc.Util

__installDoc = \
"""
Installation
============

Package Dependencies
--------------------
In order to build the %(pkgName)s software, the following packages
are required:

- boost version 1.32 or later (including boost-python): http://www.boost.org
- python version 2.3 or later: http://www.python.org
- MPI: http://www.mpi-forum.org (known to work with with LAM/MPI version
  6.7 or later http://www.lam-mpi.org and with SGI's MPT
  http://techpubs.sgi.com/)
- CppUnit version 1.10 or later http://cppunit.sourceforge.net/cppunit-wiki

Optional packages include:

- epydoc version 2.1 or later for building python API
  HTML documentation: http://epydoc.sourceforge.net
- docutils version 0.3.5 or later for building tutorial documentation:
  http://docutils.sourceforge.net
- povray version 3.6 or later for rendering simulation data:
  http://www.povray.org
- VTK version 4.2 or later for rendering simulation data:
  http://www.vtk.org

Building the Source Package
---------------------------
%(pkgName)s uses the autotools (autoconf, automake and libtool) build
system to compile source code. After the lsmearth-%(version)s.tar.gz source
has been downloaded and unziped/untared, change into the
%(pkgName)s top level source directory which contains the ``configure``
script. The ``configure`` shell script attempts to guess correct values for
various system-dependent variables used during compilation.
A typical invocation of the ``configure`` script on a system with LAM-MPI
installed would be::

  $ ./configure CC=mpicc CXX=mpic++ --prefix=/opt/pkgs/lsmearth-%(version)s

On an MPT system (Altix 3700, for example), the invocation of ``configure``
would be::

$ ./configure CC=gcc CXX=g++ --prefix=/opt/pkgs/lsmearth-%(version)s

In both these cases, the ``CC`` and ``CXX`` configure variables are used to set the
C and C++ compilers, respectively. The ``--prefix=/opt/pkgs/lsmearth-%(version)s``
option sets the root installation path, so that in these cases the %(pkgName)s
executables, libraries, etc will be installed under ``/opt/pkgs/lsmearth-%(version)s/bin``,
``/opt/pkgs/lsmearth-%(version)s/lib``, etc.
Running::

$ ./configure --help

will list the command line options (and brief descriptions) for the ``configure`` script.

Once the ``configure`` script has been run, and the various ``Makefile`` files
have been generated, the binaries can be built by issuing the::

$ make

command. Parallel builds are supported, so on multiple (or hyper-threaded)
CPU machines::

$ make -j N

will cause ``N`` files to compile simultaneously. Issuing the::

$ make install

command installs binary, data and python package and module files.
The installation can be tested with::

$ make installcheck

which runs a series of unit-tests using the **installed** package binaries.

Environment Variables
---------------------
Typically, there are three environment variables which need to
be set before being able to run an %(pkgName)s python script: ``PATH``,
``LD_LIBRARAY_PATH`` and ``PYTHONPATH``. Assuming that the ``configure``
script was run with the ``--prefix=/opt/pkgs/lsmearth-%(version)s``
option, these environment variables would be set as follows::

$ export PATH=/opt/pkgs/lsmearth-%(version)s/bin:$PATH
$ export LD_LIBRARAY_PATH=/opt/pkgs/lsmearth-%(version)s/lib:$LD_LIBRARY_PATH
$ export PYTHONPATH=/opt/pkgs/lsmearth-%(version)s/lib/python2.3/site-packages:$PYTHONPATH

:summary: Installation documentation.

"""

__doc__ = esys.lsm.doc.Util.setSectionDoc("InstallSection", __installDoc)