/[escript]/branches/doubleplusgood/doc/install/srclinux.tex
ViewVC logotype

Diff of /branches/doubleplusgood/doc/install/srclinux.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/doc/install/srclinux.tex revision 2455 by jfenwick, Wed Jun 3 03:29:07 2009 UTC branches/doubleplusgood/doc/install/srclinux.tex revision 4257 by jfenwick, Wed Feb 27 03:42:40 2013 UTC
# Line 1  Line 1 
1    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  % Copyright (c) 2003-2013 by University of Queensland
3  %  % http://www.uq.edu.au
 % Copyright (c) 2003-2008 by University of Queensland  
 % Earth Systems Science Computational Center (ESSCC)  
 % http://www.uq.edu.au/esscc  
4  %  %
5  % Primary Business: Queensland, Australia  % Primary Business: Queensland, Australia
6  % Licensed under the Open Software License version 3.0  % Licensed under the Open Software License version 3.0
7  % http://www.opensource.org/licenses/osl-3.0.php  % http://www.opensource.org/licenses/osl-3.0.php
8  %  %
9  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  % Development until 2012 by Earth Systems Science Computational Center (ESSCC)
10    % Development since 2012 by School of Earth Sciences
11    %
12    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13    
14  \section{Installing from source for \linux}  \section{Installing from source for \linux}
15  \label{sec:srclinux}  \label{sec:srclinux}
 The following instructions assume you are running the \filename{bash} shell.  
 Comments are indicated with \# characters.  
16    
17    \subsection{Dependencies}
18    
19    The following instructions assume you are running the \file{bash} shell.
20    Comments are indicated with \# characters.
21  Make sure you have the following installed:  Make sure you have the following installed:
22  \begin{itemize}  \begin{itemize}
23   \item \filename{g++} and associated tools.   \item \file{g++} and associated tools.
24  \item \filename{make}   \item \file{make}
25  \item \filename{libXext.so}\footnote{In Debian this is in the libXext-dev package.}   % I suspect that these are only needed by VTK and if we aren't using it anymore they could be removed
26  \item \filename{libxt.so}\footnote{In Debian this is in the libxt-dev package.}  %  \item \file{libXext.so}\footnote{In Debian this is in the libXext-dev package.}
27    %  \item \file{libxt.so}\footnote{In Debian this is in the libxt-dev package.}
28  \end{itemize}  \end{itemize}
29    
30    \noindent To compile matplotlib you will also need the following\footnote{For
31    Debian and Ubuntu users, installing \file{libfreetype6-dev} and
32    \file{libpng-dev} will be sufficient.} (if your distribution separates
33    development files, make sure to get the development packages):
34    \begin{itemize}
35     \item \file{freetype2}
36     \item \file{zlib}
37     \item \file{libpng}
38    \end{itemize}
39    
40    \noindent In order to fully test the installation using the unit tests you also
41    need\footnote{On Debian and Ubuntu this is packaged as \file{libcppunit-dev}}:
42    \begin{itemize}
43     \item \file{cppunit}
44    \end{itemize}
45    However, a large number of tests will work without it.
46    
47    \subsection{Preliminaries}
48    \label{sec:prelim}
49  You will also need a copy of the \esfinley source code.  You will also need a copy of the \esfinley source code.
50  If you retrieved the source using subversion, don't forget that one can use the export command instead of checkout to get a smaller copy.  If you retrieved the source using subversion, don't forget that one can use the export command instead of checkout to get a smaller copy.
51  For additional visualisation functionality see Section~\ref{sec:linaddfunc}.  For additional visualization functionality see Section~\ref{sec:addfunc}.
52    
53  These instructions will produce the following structure:  These instructions will produce the following directory structure:
54  \begin{itemize}  \begin{itemize}
55  \item \filename{stand}: \begin{itemize}   \item[] \file{stand} \begin{itemize}
56   \item \filename{escript.d}    \item[] \file{escript.d}
57  \item \filename{packages}    \item[] \file{pkg}
58  \item \filename{package_src}    \item[] \file{pkg_src}
59  \item \filename{build}    \item[] \file{build}
60  \item \filename{doc}    \item[] \file{doc}
61    \end{itemize}   \end{itemize}
62  \end{itemize}  \end{itemize}
63    
64  The build directory can be removed when you are finished.  Before you start copy the \esfinley source into the \file{escript.d} directory.
65    The following instructions refer to software versions in the \file{escript-support-3-src} bundle.
66    If you download your own versions of those packages substitute their version numbers and names as appropriate.
67    There are a number of uses of the \file{make} command in the following instructions.
68    If your computer has multiple cores/processors you can speed up the compilation process by adding -j 2 after the make command.
69    For example to use all processors on a computer with 4 cores:
70    \begin{shellCode}
71    make
72    \end{shellCode}
73    becomes
74    \begin{shellCode}
75    make -j 4
76    \end{shellCode}
77    
78  \begin{shellCode}  \begin{shellCode}
79  mkdir stand  mkdir stand
80  cd stand  cd stand
81  export PKG_ROOT=`pwd`/packages  mkdir build doc pkg pkg_src
82    export PKG_ROOT=$(pwd)/pkg
83  \end{shellCode}  \end{shellCode}
84    
85  Copy compressed source bundles into \filename{stand/package_src}.  \subsection{Building the dependencies}
86  Copy documentation files into \filename{doc}.  
87    Copy the compressed sources for the packages into \file{stand/pkg_src}.
88    If you are using the support bundles, decompress them in the stand directory:
89    \begin{shellCode}
90    tar -xjf escript-support-3-src.tar.bz2
91    \end{shellCode}
92    
93    Copy documentation files into \file{doc} then unpack the archives:
94    
95  \begin{shellCode}  \begin{shellCode}
 mkdir packages  
 mkdir build  
96  cd build  cd build
97  tar -jxf ../package_src/Python-2.6.1.tar.bz2  tar -jxf ../pkg_src/Python-2.6.2.tar.bz2
98  tar -jxf ../package_src/boost_1_37_0.tar.bz2  tar -jxf ../pkg_src/boost_1_39_0.tar.bz2
99  tar -jxf ../package_src/MesaLib-7.2.tar.bz2  tar -zxf ../pkg_src/scons-1.2.0.tar.gz
100  tar -zxf ../package_src/netcdf-4.0.tar.gz  tar -zxf ../pkg_src/numpy-1.3.0.tar.gz
101  tar -zxf ../package_src/vtk-5.2.1.tar.gz  tar -zxf ../pkg_src/netcdf-4.0.tar.gz
102  tar -zxf ../package_src/vtkdata-5.2.1.tar.gz  tar -zxf ../pkg_src/matplotlib-0.98.5.3.tar.gz
 tar -zxf ../package_src/numarray-1.5.2.tar.gz  
 tar -zxf ../package_src/cmake-2.6.3.tar.gz  
 tar -zxf ../package_src/scons-1.2.0.tar.gz  
103  \end{shellCode}  \end{shellCode}
104    
105  Build python.  \begin{itemize}
106    
107    \item Build Python:
108  \begin{shellCode}  \begin{shellCode}
109  cd Python*  cd Python*
110  ./configure --prefix=$PKG_ROOT/python-2.6.1 --enable-shared 2>&1 \  ./configure --prefix=$PKG_ROOT/python-2.6.2 --enable-shared 2>&1 \
111    | tee tt.configure.out    | tee tt.configure.out
112    make
113  make install 2>&1 | tee tt.make.out  make install 2>&1 | tee tt.make.out
114    
115  cd ..  cd ..
# Line 78  export PATH=$PKG_ROOT/python/bin:$PATH Line 118  export PATH=$PKG_ROOT/python/bin:$PATH
118  export PYTHONHOME=$PKG_ROOT/python  export PYTHONHOME=$PKG_ROOT/python
119  export LD_LIBRARY_PATH=$PKG_ROOT/python/lib:$LD_LIBRARY_PATH  export LD_LIBRARY_PATH=$PKG_ROOT/python/lib:$LD_LIBRARY_PATH
120    
121  pushd ../packages  pushd ../pkg
122  ln -s python-2.6.1/ python  ln -s python-2.6.2/ python
123  popd  popd
   
124  \end{shellCode}  \end{shellCode}
125    
126  Run python to make sure it works.  Run the new python executable to make sure it works.
 Now build numarray.  
127    
128    \item Now build NumPy:
129  \begin{shellCode}  \begin{shellCode}
130  cd numarray-1.5.2  cd numpy-1.3.0
131    python setup.py build
132  python setup.py install \  python setup.py install --prefix $PKG_ROOT/numpy-1.3.0
  --gencode --install-lib=$PKG_ROOT/numarray-1.5.2/lib \  
  --install-headers=$PKG_ROOT=$PKG_ROOT/numarray-1.5.2/include/numarray \  
    2>&1 | tee tt.install.out  
   
   
 export PYTHONPATH=$PKG_ROOT/numarray/lib:$PYTHONPATH  
133  cd ..  cd ..
134  pushd ../packages  pushd ../pkg
135  ln -s numarray-1.5.2 numarray  ln -s numpy-1.3.0 numpy
136  popd  popd
137    export PYTHONPATH=$PKG_ROOT/numpy/lib/python2.6/site-packages:$PYTHONPATH
138  \end{shellCode}  \end{shellCode}
139    
140  Now we build scons.  % \begin{shellCode}
141    % cd numarray-1.5.2
142    %
143    % python setup.py install \
144    %  --gencode --install-lib=$PKG_ROOT/numarray-1.5.2/lib \
145    %  --install-headers=$PKG_ROOT=$PKG_ROOT/numarray-1.5.2/include/numarray \
146    %    2>&1 | tee tt.install.out
147    %
148    %
149    % export PYTHONPATH=$PKG_ROOT/numarray/lib:$PYTHONPATH
150    % cd ..
151    % pushd ../pkg
152    % ln -s numarray-1.5.2 numarray
153    % popd
154    % \end{shellCode}
155    
156    \item Next build scons:
157  \begin{shellCode}  \begin{shellCode}
158  cd scons-1.2.0  cd scons-1.2.0
159  python setup.py install --prefix=$PKG_ROOT/scons-1.2.0  python setup.py install --prefix=$PKG_ROOT/scons-1.2.0
160    
161  export PATH=$PKG_ROOT/scons/bin:$PATH  export PATH=$PKG_ROOT/scons/bin:$PATH
162  cd ..  cd ..
163  pushd ../packages  pushd ../pkg
164  ln -s scons-1.2.0 scons  ln -s scons-1.2.0 scons
165  popd  popd
166  \end{shellCode}  \end{shellCode}
167    
168  ...Boost libraries ...  \item The Boost libraries...:
169  \begin{shellCode}  \begin{shellCode}
170  cd boost_1_37_0  pushd ../pkg
171    mkdir boost_1_39_0
172  ./configure --prefix=$PKG_ROOT/boost_1_37_0 --with-python-root=$PKG_ROOT/python \  ln -s boost_1_39_0 boost
173    --with-python-version=2.6 --with-libraries=python  popd
174    cd boost_1_39_0
175  make  ./bootstrap.sh --with-libraries=python --prefix=$PKG_ROOT/boost
176  make install  ./bjam
177  ln -s $PKG_ROOT/boost_1_37_0 $PKG_ROOT/boost  ./bjam install --prefix=$PKG_ROOT/boost --libdir=$PKG_ROOT/boost/lib
178  export LD_LIBRARY_PATH=$PKG_ROOT/boost/lib:$LD_LIBRARY_PATH  export LD_LIBRARY_PATH=$PKG_ROOT/boost/lib:$LD_LIBRARY_PATH
179  cd ..  cd ..
180  pushd ../packages  pushd ../pkg/boost/lib/
181  ln -s boost_1_37_0 boost  ln *.so.* libboost_python.so
182  popd  popd
183  \end{shellCode}  \end{shellCode}
184    
185  ... and netcdf.  \item ...and netCDF:
186  \begin{shellCode}  \begin{shellCode}
187  cd netcdf-4.0  cd netcdf-4.0
188  CFLAGS="-O2 fPIC -Df2cFortran" CXXFLAGS="-O2 fPIC -Df2cFortran" \  CFLAGS="-O2 -fPIC -Df2cFortran" CXXFLAGS="-O2 -fPIC -Df2cFortran" \
189  FFLAGS="-O2 fPIC -Df2cFortran" FCFLAGS="-O2 fPIC -Df2cFortran" \  FFLAGS="-O2 -fPIC -Df2cFortran" FCFLAGS="-O2 -fPIC -Df2cFortran" \
190  ./configure --prefix=$PKG_ROOT/netcdf-4.0  ./configure --prefix=$PKG_ROOT/netcdf-4.0
191    
192  make -j2  make
193  make install  make install
194    
195  export LD_LIBRARY_PATH=$PKG_ROOT/netcdf/lib:$LD_LIBRARY_PATH  export LD_LIBRARY_PATH=$PKG_ROOT/netcdf/lib:$LD_LIBRARY_PATH
196  cd ..  cd ..
197  pushd ../packages  pushd ../pkg
198  ln -s netcdf-4.0 netcdf  ln -s netcdf-4.0 netcdf
199  popd  popd
200  \end{shellCode}  \end{shellCode}
201    
202  CMake and Mesa are required for VTK.  \item Finally matplotlib:
203  \begin{shellCode}  \begin{shellCode}
204  cd cmake-2.6.3  cd matplotlib-0.98.5.3
205  ./configure --prefix=$PKG_ROOT/cmake-2.6.3 2>&1 | tee tt.configure  python setup.py build
206  make -j 4  python setup.py install --prefix=$PKG_ROOT/matplotlib-0.98.5.3
 make install  
   
 export PATH=$PKG_ROOT/cmake/bin:$PATH  
207  cd ..  cd ..
208  pushd ../packages  pushd ../pkg
209  ln -s cmake-2.6.3 cmake  ln -s matplotlib-0.98.5.3 matplotlib
210  popd  popd
 \end{shellCode}  
   
 These instructions do not compile MesaDemos or GLUT.  
 If you need to check if Mesa compiled correctly, then the demos are a good test.  
 \begin{shellCode}  
 cd Mesa-7.2  
 ./configure --prefix=$PKG_ROOT/mesa-7.2 --enable-gl-osmesa --with-driver=xlib  
   
 make -j 4  
 make install  
   
 export LD_LIBRARY_PATH=$PKG_ROOT/mesa:$LD_LIBRARY_PATH  
211  cd ..  cd ..
 pushd ../packages  
 ln -s mesa-7.2 mesa  
 popd  
212  \end{shellCode}  \end{shellCode}
213    
214  \begin{shellCode}  \end{itemize}
 cd VTK  
 cmake .  
   
 #Edit the CMakeCache and make the following changes:  
 #(Please replace .... with an absolute path to the stand directory)  
   
 #-----------------  
   
 BUILD_EXAMPLES should be OFF  
 BUILD_SHARED_LIBS should be ON  
   
 CMAKE_INSTALL_PREFIX    ..../stand/packages/vtk-5.2.1  
 CMAKE_VERBOSE_MAKEFILE  TRUE  
   
 #check PYTHON_EXECUTABLE is correct.  
 #but it seems to be when I went through these steps  
   
 VTK_OPENGL_HAS_OSMESA   TRUE  
 VTK_USE_64BIT_IDS   ON  
 # That last one is marked as "May cause some bugs" in the original instructions  
   
 VTK_WRAP_PYTHON ON  
 VTK_USE_MANGLED_MESA    OFF  
   
 #--------------------  
   
 cmake .  
 #It won't work but it will put some variables in that you need.  
   
 #Edit CMakeCache again and make the following changes  
   
 #----------------  
   
 VTK_USE_TK  OFF  
   
 OSMESA_INCLUDE_DIR  ..../stand/packages/mesa/include  
   
 OSMESA_LIBRARY  ..../stand/packages/mesa/lib/libOSMesa.so  
   
 PYTHON_INCLUDE_PATH ..../stand/packages/python/include/python2.6  
   
 PYTHON_LIBRARY  ..../stand/packages/python/lib/libpython2.6.so  
   
 OPENGL_INCLUDE_DIR  ..../stand/packages/mesa/include  
   
 OPENGL_gl_LIBRARY   ..../stand/packages/mesa/lib/libGL.so  
   
 #----------------  
215    
216  cmake .  % \subsection{VTK support}
217    % VTK is only required for pyvisi. To build it you need CMake and Mesa.
218    % The packages can be downloaded independently or in the \file{escript-support-visi-3-src}.
219    % If you will not be using pyvisi, then skip to \Sec{sec:compileescriptlinux}
220    %
221    % Copy the compressed sources for the packages into \file{stand/pkg_src}.
222    % If you are using the support bundles, decompress them in the stand directory.
223    % \begin{shellCode}
224    % tar -xjf escript-support-visi-3-src.tar.bz2
225    % \end{shellCode}
226    %
227    % \begin{shellCode}
228    % cd build
229    % tar -jxf ../pkg_src/MesaLib-7.2.tar.bz2
230    % tar -zxf ../pkg_src/vtk-5.2.1.tar.gz
231    % tar -zxf ../pkg_src/vtkdata-5.2.1.tar.gz
232    % tar -zxf ../pkg_src/cmake-2.6.3.tar.gz
233    % \end{shellCode}
234    %
235    % \begin{itemize}
236    %
237    % \item Build CMake:
238    % \begin{shellCode}
239    % cd cmake-2.6.3
240    % ./configure --prefix=$PKG_ROOT/cmake-2.6.3 2>&1 | tee tt.configure
241    % make
242    % make install
243    %
244    % export PATH=$PKG_ROOT/cmake/bin:$PATH
245    % cd ..
246    % pushd ../pkg
247    % ln -s cmake-2.6.3 cmake
248    % popd
249    % \end{shellCode}
250    %
251    % \item Build Mesa:
252    % \begin{shellCode}
253    % cd Mesa-7.2
254    % ./configure --prefix=$PKG_ROOT/mesa-7.2 --enable-gl-osmesa --with-driver=xlib
255    %
256    % make
257    % make install
258    %
259    % export LD_LIBRARY_PATH=$PKG_ROOT/mesa/lib:$LD_LIBRARY_PATH
260    % cd ..
261    % pushd ../pkg
262    % ln -s mesa-7.2 mesa
263    % popd
264    % \end{shellCode}
265    % These instructions do not compile MesaDemos or GLUT.
266    % If you need to check if Mesa compiled correctly, then the demos are a good test.
267    %
268    % \item Finally, build VTK:
269    % \begin{shellCode}
270    % cd VTK
271    % cmake .
272    % \end{shellCode}
273    %
274    % Now edit the \file{CMakeCache.txt} file and make the following changes.
275    % Where .... appears please replace it with the absolute path to the pkg directory.
276    % For example, replace \file{CMAKE_INSTALL_PREFIX:PATH=..../vtk-5.2.1} with
277    % \file{CMAKE_INSTALL_PREFIX:PATH=/home/bob/stand/pkg/vtk-5.2.1}
278    % (Search for the text before the =).
279    % \begin{shellCode}
280    % BUILD_EXAMPLES:BOOL=OFF
281    % BUILD_SHARED_LIBS:BOOL=ON
282    % CMAKE_INSTALL_PREFIX:PATH=..../vtk-5.2.1
283    % CMAKE_VERBOSE_MAKEFILE:BOOL=TRUE
284    % VTK_OPENGL_HAS_OSMESA:BOOL=TRUE
285    % VTK_USE_64BIT_IDS:BOOL=ON
286    % VTK_WRAP_PYTHON:BOOL=ON
287    % VTK_USE_MANGLED_MESA:BOOL=OFF
288    % \end{shellCode}
289    %
290    % Now rerun cmake (it won't work but it adds some variables you need).
291    %
292    % \begin{shellCode}
293    % cmake .
294    % \end{shellCode}
295    %
296    % Edit \file{CMakeCache.txt} and change the following variables:
297    %
298    % \begin{shellCode}
299    % VTK_USE_OFFSCREEN:BOOL=ON
300    % VTK_USE_TK:BOOL=OFF
301    % OSMESA_INCLUDE_DIR:PATH=..../mesa/include
302    % OSMESA_LIBRARY:FILEPATH=..../mesa/lib/libOSMesa.so
303    % PYTHON_INCLUDE_PATH:PATH=..../python/include/python2.6
304    % PYTHON_LIBRARY:FILEPATH=..../python/lib/libpython2.6.so
305    % OPENGL_INCLUDE_DIR:PATH=..../mesa/include
306    % OPENGL_gl_LIBRARY:FILEPATH=..../mesa/lib/libGL.so
307    % \end{shellCode}
308    %
309    % The following steps will take a while so grab a coffee while it compiles.
310    % \begin{shellCode}
311    % cmake .
312    % make
313    % chmod +w Utilities/vtktiff/tif_fax3sm.c
314    % make install
315    %
316    % cd ../../pkg
317    % ln -s vtk-5.2.1 vtk
318    % cd ..
319    % \end{shellCode}
320    %
321    % \end{itemize}
322    
323  chmod +w Utilities/vtktiff/tif_fax3sm.c  \subsection{Compiling escript}\label{sec:compileescriptlinux}
324    
325  make  Change to the directory containing your escript source (\file{stand/escript.d}), then:
 make install  
326    
327    \begin{shellCode}
328    cd escript.d/scons
329    cp TEMPLATE_linux.py YourMachineName_options.py
330    
331  cd ../../packages  echo $PKG_ROOT
 ln -s vtk-5.2.1 vtk  
 cd ..  
332  \end{shellCode}  \end{shellCode}
333    Where \texttt{YourMachineName} is the name of your computer as returned by the hostname command.
334    If the name contains non-alphanumeric characters, then you will need to replace them with underscores.
335    For example the options file for \texttt{bob-desktop} would be named \file{bob_desktop_options.py}.
336    If you wish to build with OpenMP, MPI or configure other aspects of the system take a quick look at Section~\ref{sec:compilesrc}.
337    
 Now copy the \esfinley source into an \filename{escript.d} directory in \filename{stand}.  
338    
339  \subsection{Compiling escript}\label{sec:compileescriptlinux}  You will need to edit your options file and specify where to find boost and netcdf.
340    (replace \file{x/stand} with the path to \file{stand})
341    
342  Change to the directory containing your escript source (\filename{escript.d}), then:  \begin{python}
343    #boost_prefix = '/usr/local'
344    \end{python}
345    
346  \begin{shellCode}  should be
347  cd scons  \begin{python}
348  cp linux_options_example.py YourMachineName_options.py  boost_prefix = ['x/stand/pkg/boost/include/boost-1_39/', 'x/stand/pkg/boost/lib/']
349    \end{python}
350    
351  #edit the options file and make the following changes:  \begin{python}
352  #-----------------------------------------------------------------  #netcdf = True
353  declare a PKG_ROOT variable at the top of the file eg:  \end{python}
 PKG_ROOT='/home/jfenwick/stand/packages'  
354    
355  python_path     = PKG_ROOT+'python/include/python2.6'  should be
356  python_lib_path     = PKG_ROOT+'python/lib'  \begin{python}
357  python_libs     = 'python2.6'  netcdf = True
358    \end{python}
359    
360  boost_path      = PKG_ROOT+'boost/include/boost-1_37'  \begin{python}
361  boost_lib_path      = PKG_ROOT+'boost/lib'  #netcdf_prefix = '/usr/local'
362  boost_libs      = ['boost_python-gcc43-mt']  \end{python}
 # You could simlink the boost python library to give a shorter  
 # name but it's not worth it  
363    
364  usevtk      = 'yes'  should be \begin{python}
365  #-------------------------------------------------------------------  netcdf_prefix = ['x/stand/pkg/netcdf/include/',
366                'x/stand/pkg/netcdf/lib/']}
367    \end{python}
368    
369  ln -s $PKG_ROOT/vtk-5.2.1 $PKG_ROOT/vtk  %
370    % Edit the options file and put the value of PKG_ROOT between the quotes in the PKG_ROOT= line.
371    % For example:
372    % \begin{shellCode}
373    % PKG_ROOT="/home/bob/stand/pkg"
374    % \end{shellCode}
375    
376  Modify bin/escript  \begin{shellCode}
377    cd ../bin
378    \end{shellCode}
379    
380    Modify the STANDALONE line of \file{run-escript} to read:
381    
382  STANDALONE=1  STANDALONE=1
383    
384  #Check to make sure the paths in the if [ $STANDALONE == 1 ]  Start a new terminal and go to the \file{stand} directory.
 #block are correct  
   
 #-----------------------------------------------------------------  
385    
386  #start a new terminal  \begin{shellCode}
387  cd stand  export PATH=$(pwd)/pkg/scons/bin:$PATH
 export PATH=`pwd`/packages/scons/bin:$PATH  
388  cd escript.d  cd escript.d
389  eval `bin/escript -e`  eval $(bin/run-escript -e)
390  scons  scons
391  \end{shellCode}  \end{shellCode}
392    
393  If you wish to test your build, then you can do the following.  If you wish to test your build, then you can do the following.
394  Note this may take a while if you have a slow processor and/or less than 1Gb of RAM.  Note this may take a while if you have a slow processor and/or less than 1GB of RAM.
395  \begin{shellCode}  \begin{shellCode}
396  scons all_tests  scons py_tests
397  \end{shellCode}  \end{shellCode}
398    (If you have cppunit installed you can run additional tests using \texttt{scons all_tests}.
399    
400  \subsection{Cleaning up}  \subsection{Cleaning up}
401  Once you are satisfied, the \filename{escript.d/build} and \filename{\$PKG_ROOT/build} directories can be removed.  Once you are satisfied, the \file{escript.d/build} and \file{stand/build} directories can be removed.
402    
403  If you \emph{really} want to save space and do not wish to be able to edit or recompile escript, you can remove the following:  If you \emph{really} want to save space and do not wish to be able to edit or recompile \esfinley, you can remove the following:
404  \begin{itemize}  \begin{itemize}
405   \item From the \filename{escript.d} directory:\begin{itemize}   \item From the \file{escript.d} directory:\begin{itemize}
406  \item Everything except: \filename{bin}, \filename{include}, \filename{lib}, \filename{esys},  \item Everything except: \file{bin}, \file{include}, \file{lib}, \file{esys},
407  \filename{README_LICENSE}.  \file{README_LICENSE}.
408  \item Hidden files, which can be removed using  \item Hidden files, which can be removed using
409  \begin{shellCode}  \begin{shellCode}
410  find . -name .?* | xargs rm -rf  find . -name '.?*' | xargs rm -rf
411  \end{shellCode}  \end{shellCode}
412  in the \filename{escript.d} directory.  in the \file{escript.d} directory.
413  \end{itemize}  \end{itemize}
414  \item from the \filename{packages} directory:  \item from the \file{pkg} directory:
415  \begin{itemize}  \begin{itemize}
416  \item  \filename{scons}, \filename{scons-1.2.0}, \filename{cmake-2.6.3} and \filename{cmake}  \item  \file{scons}, \file{scons-1.2.0}
417  \end{itemize}  \end{itemize}
418  \item \filename{package\_src}\footnote{Do not remove this if you intend to redistribute.}.  \item \file{package\_src}\footnote{Do not remove this if you intend to redistribute.}.
419  \end{itemize}  \end{itemize}
420    
421  Please note that removing all these files may make it more difficult for us to diagnose problems.  Please note that removing all these files may make it more difficult for us to diagnose problems.
422    
423    
   
   
 \section{Additional Functionality}\label{sec:linaddfunc}  
 To perform visualisations you will need some additional tools.  
 Since these do not need to be linked with any of the packages above, you can install versions available for your  
 system, or build them from source.  
 \begin{itemize}  
 \item \filename{ppmtompeg} and \filename{jpegtopnm} from the \filename{netpbm} suite. - To build from source  
 you would also need \filename{libjpeg} and its headers as well as \filename{libpng}\footnote{libpng requires zlib to build} and its headers.  
 \item A tool to visualise VTK files. For example Mayavi or Visit.  
 \end{itemize}  

Legend:
Removed from v.2455  
changed lines
  Added in v.4257

  ViewVC Help
Powered by ViewVC 1.1.26