Commit ea7654db authored by hrchilds's avatar hrchilds

Initial repo entry

git-svn-id: http://visit.ilight.com/svn/visit/trunk/src@3 18c085ea-50e0-402c-830e-de6fd14e8384
parents

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.
Build instructions for VisIt
==============================
VisIt relies on several external libraries which must be built and installed
prior to building VisIt. This document provides detailed step by step
instructions for building VisIt and each of the dependent libraries. The
instructions have been designed so that you can cut and paste most of the
commands needed to build the libraries and VisIt from this file into your
shell prompt.
Library Version Description For More information
======= ======= =========== ====================
Mesa 5.0 3-D Graphics Library http://www.mesa3d.org/
Python 2.1.2 Scripting Language http://www.python.org
Qt 2.3.0 GUI Toolkit http://www.trolltech.com
Silo 4.3.1 File I/O library http://www.llnl.gov/bdiv/meshtv
VTK 021216 Visualization Toolkit http://www.kitware.com
The public version of VisIt has been built with the above listed versions
of the libraries, so it is known to work properly with those versions. For
all the packages except VTK and Qt, you can probably use newer versions of the
packages and VisIt should work properly. For Mesa, you must build a mangled
version of Mesa. The distribution provided has already been set up to build
a mangled version so no additional work is required if you use it. For VTK,
you must use the December 16 distribution provided. The version of Qt used to
build VisIt must be greater than or equal to 2.3.0. VisIt is also compatible
with Qt version 3.
Building VisIt
===============
VisIt can currently be built on aix, irix, linux, solaris, tru64 and
windows operating systems. The following instructions only apply to
building VisIt on Unix systems and does not apply to Windows.
We currently build VisIt using the following compilers on the following
operating systems. It is suggested that you use the same compilers.
Operating System Compiler
================ ========
AIX 5.1 g++ 3.1
IRIX64 6.5 MIPSpro 7.3.1.1m and MIPSpro 7.3.1.2m
Redhat Linux 7.1 and 7.2 g++ 2.96
Solaris 7 g++ 2.95.2
Tru64 5.1 g++ 3.0.4
It is essential that you build all the dependent packages and visit using
the same c++ compiler or you will encounter linking problems because different
compilers or different versions of the same compiler may use different name
mangling schemes.
If you are using gmake or are building on an SGI and your machine has
multiple CPUs, you may speed up the build process for many of the products
by doing a parallel make. For gmake, the command would be
make -j "# of processors"
and for an SGI the command would be
env PARALLEL="# of processors" make -P
Lets go ahead and build VisIt. Start off by creating a directory to hold
visit and the installed versions of each of the dependent libraries.
mkdir visit
echo `pwd`/visit > visitpath
Now build each of the dependent libraries followed by VisIt.
Mesa
=====
Mesa is a 3-D graphics library with an API which is very similar to that of
OpenGL. It is used for performing off-screen rendering.
#
# Build Mesa
#
gunzip Mesa-5.0-mangled.tar.gz
tar xf Mesa-5.0-mangled.tar
cd Mesa-5.0
#
# To build Mesa, one of the following targets should probably be used. The
# complete list of targets is available by typing "make" in the Mesa-5.0
# directory.
#
# make aix for IBM RS/6000
# make irix6-n32-dso for SGI systems with IRIX 6.x, make n32-bit DSOs
# make irix6-64-dso for SGI systems with IRIX 6.x, make 64-bit DSOs
# make linux for Linux systems, make shared .so libs
# make linux-alpha for Linux on Alpha systems
# make osf1-sl for DEC Alpha systems with OSF/1, make shared libs
# make solaris-x86 for PCs with Solaris
# make solaris-x86-gcc for PCs with Solaris using GCC
# make sunos5-sl for Suns with SunOS 5.x, make shared libs
# make sunos5-gcc-sl for Suns with SunOS 5.x, GCC, make shared libs
#
# Install it in the visit directory under the mesa directory.
#
mkdir ../visit/mesa
mkdir ../visit/mesa/{include,lib}
mkdir ../visit/mesa/include/GL
cp include/GL/*.h ../visit/mesa/include/GL
#
# On AIX systems you will need to build shared libraries from the
# archives.
#
# cd lib
# ar -x libMesaGL.a
# g++ -Wl,-G -shared -o libMesaGL.so -Wl,-bmaxdata:0x70000000 -Wl,-brtl *.o
# rm *.o
# ar -x libOSMesa.a
# g++ -Wl,-G -shared -o libOSMesa.so -Wl,-bmaxdata:0x70000000 -Wl,-brtl *.o
# rm *.o
# cd ..
#
cp lib/*.so ../visit/mesa/lib
cd ..
VTK
====
VTK is an object oriented library for visualizing 3D data. VisIt uses it
for all its visualization functionality. Follow the directions listed below
to build VTK. If you have any problems building or installing VTK, read the
VTK/README.html file included in the VTK distribution for more information.
#
# Build cmake which is used by VTK to configure its distribution
#
gunzip CMake1.4.7-src-unix.tar.gz
tar xf CMake1.4.7-src-unix.tar
cd CMake-1.4.7
env CXXFLAGS="" ./configure
#
# Build VTK
#
cd ..
gunzip vtk_cvs_16Dec02.tar.gz
tar xf vtk_cvs_16Dec02.tar
cd VTK
../CMake-1.4.7/Source/cmake
#
# Edit CMakeCache.txt. Turn BUILD_SHARED_LIBS, VTK_USE_HYBRID, and
# VTK_USE_MANGLED_MESA on, Turn BUILD_TESTING off.
#
# If you want to change the compilers you should modify CMAKE_CXX_COMPILER
# and CMAKE_C_COMPILER. If you want to change the compiler flags you should
# modify CMAKE_CXX_FLAGS and CMAKE_C_FLAGS. You might want to specify "-O2"
# as a compiler flag to build an optimized version. If you want to specify
# the location of the OpenGL library you should modify OPENGL_LIBRARY
# (/usr/shlib/libGL.so on tru64 systems.)
#
../CMake-1.4.7/Source/cmake
#
# Edit CMakeCache.txt, setting MANGLED_MESA_INCLUDE_DIR, MANGLED_MESA_LIBRARY,
# MANGLED_OSMESA_LIBRARY, to point to the appropriate files and directories
# in the mesa directory.
# For example:
#
# MANGLED_MESA_INCLUDE_DIR:PATH=/home/visit/mesa/include
# MANGLED_MESA_LIBRARY:FILEPATH=/home/visit/mesa/lib/libMesaGL.so
# MANGLED_OSMESA_LIBRARY:FILEPATH=/home/visit/mesa/lib/libOSMesa.so
#
# Note that you need to be very careful in setting the above variables so
# that you provide the appropriate filename or path.
#
../CMake-1.4.7/Source/cmake
#
# On tru64 systems using g++ 3.0.4, several files in the Imaging directory
# will not compile because of an internal compiler error. You will need to
# comment out the code in the method ThreadedExecute (with "#if 0" as the
# first line in the method and "#endif" as the last line in the method.)
# The files are:
# Imaging/vtkImageContinuousDilate3D.cxx