Compiling Davinci

From DavinciWiki
(Difference between revisions)
Jump to: navigation, search
(Davinci Installation)
(Dependencies Installation)
Line 41: Line 41:
  
  
=== Dependencies Installation ===
+
=== Dependencies Installation (Not required, but highly recommended) ===
  
 
* [http://tiswww.case.edu/php/chet/readline/rltop.html| Readline]
 
* [http://tiswww.case.edu/php/chet/readline/rltop.html| Readline]

Revision as of 14:24, 20 November 2008

Contents

Standard Linux Building Procedure

As root type the following commands.

$ ./configure
$ make
$ make install 


Operating System: Mac OS X 10.4.8

Dependencies

  • Mac OS X 10.4.X
  • Xcode2
  • Apple X11 or XDarwin
  • xv (binary)
    1. Unzip and move to /usr/local
  • gnuplot
    1. download and install aquaterm (source)
    2. download and install gnuplot (source)
  • hdf5 (source)
    1. configure with "./configure --enable-hdf5v1_4=yes --prefix=/usr/local"
    2. make
    3. sudo make install
    • NOTE: also requires zlib (should already be installed source)

Installation Procedure

  1. Download the most recent davinci source -- This includes iomedley and readline
  2. unpack by either double clicking on the zipped tarball or by typing tar -xzpf davinci-1.xx in the directory where davinci was downloaded
  3. change in to the davinci-1.xx directory. The steps below will compile davinci for mac without aqua (with X11). Remove "--disable-aqua"
  4. for a non-X11 compile. The --prefix allows the user to specify the
  5. ./configure --prefix="INSTALL DIRECTORY"
  6. make
  7. sudo make install -- if you want to install it into your standard bin directory


Operating System: Solaris 10 (Sparc) 64-bit Ultra 4

The method was tested in 64 bit Solaris 10 (SPARC) Ultra 4.

Davinci is installed using GNU gcc although some dependencies like HDF5 are easier installed using Studio 12.


Dependencies Installation (Not required, but highly recommended)

You can install a pre-built version of readline in Freeware for Solaris website . The easiest way to install readline is through pkg-get. First you install pkg-get (Typically in /opt/csw ) and then you can install the readline as follows:

pkg-get install readline

You can install a pre-built version of Gnuplot in Freeware for Solaris website . The easiest way to install readline is through pkg-get. First you install pkg-get (Typically in /opt/csw ) and then you can install the readline as follows:

pkg-get install gnuplot


  • HDF5 (Version 1.8)


HDF5 can be built using Sun Studio 12

Once Sun Studio is installed, set the environment variables CC and CXX as follows (Assuming C Shell)

setenv CC cc
setenv CXX cc

./configure
make
make install

Davinci Installation

Davinci can be installed using GCC so the CC variables have to be changed back to gcc

setenv CC gcc
setenv CXX gcc

Assuming davinci is installed under /opt/local

mkdir /opt/local/davinci-{version}
mkdir /opt/local/davinci-{version}/share
mkdir /opt/local/davinci-{version}/include
mkdir /opt/local/davinci-{version}/lib
mkdir /opt/local/davinci-{version}/bin

Configure and Make (as a user)

 ./configure CFLAGS="-fpic" --prefix=/opt/local/davinci-{version} \
--with-help=/opt/local/davinci-{version}/share/davinci/docs/dv.gih  \
--with-modpath=/opt/local/davinci-{version}/lib/davinci \

If readline is installed in some location not found by the configure set the path to it (For example if installed under /opt/csw add --with-readline=/opt/csw )

If HDF5 is installed in some location not found by the configure set the path to it (For example if installed under /opt/local add --with-hdf5=/opt/local)

If Gnuplot is installed in some location not found by the configure set the path to it (For example if the binary ois located in /opt/csw/bin/gnuplot add --with-gnuplot=/opt/csw/bin/gnuplot)



make

Install as root

make install

Building Davinci for Linux in 64-bit AMD Opteron(tm)

The position independent code needs to be enabled. For example

./configure  CFLAGS="-fpic"
make
make install

To add ISIS3 reading (and eventually write) support:

./configure --with-isis3=/mars/common/isis3/x86_64/isis \
CFLAGS="-fpic" QTDIR=/usr/lib64/qt4
make
make install

Building Davinci for Mars Space Flight Facility

For CentOS5 machines

To isolate each Davinci version from other versions, separate directories are created under /mars/common/ as follows:

Create new Directories. Replace {version} with new version number (e.g. 1.70)

mkdir /mars/common/davinci-{version}
mkdir /mars/common/davinci-{version}/share
mkdir /mars/common/davinci-{version}/include
mkdir /mars/common/davinci-{version}/lib
mkdir /mars/common/davinci-{version}/bin

Build and Install

 ./configure --prefix=/mars/common/davinci-{version} \
--with-help=/mars/common/davinci-{version}/share/davinci/docs/dv.gih  \
--with-modpath=/mars/common/davinci-{version}/lib/davinci \
--enable-libisis=/mars/common/isis/isisr \
--with-qmv=/mars/common/qmv
$ make
$ make install

Test it out by running

/mars/common/davinci-{version}/bin/davinci
dv>install_check()

If you see no significant errors, Then (make it official) by create new symlinks

ln -sni /mars/common/davinci-{version}  /mars/common/davinci

Make it davinci group writable

chgrp -R davinci /mars/common/davinci
chmod -R 775 /mars/common/davinci

Building RPM

Before you start building rpms, make sure you have rpmbuild installed. Probably you want to have a FITS and HDF5 support. You can either get them in the official websites, or just easier in http://www.rpmfind.net. Package names: cfitsio, cfitsio-devel, hdf5, hdf5-devel. If you want to use GUI module, lesstif and lesstif-devel are also required.

Building process as non-root user:

mkdir davinci
svn checkout file:///tes/svn/dev/davinci/trunk davinci
svn checkout file:///tes/svn/dev/davinci_build/trunk/linux davinci/build_utils
cd davinci/build_utils
./build_rpm

If everything went alright, the rpm files should be created on the davinci/build_utils directory.


Technical Info about building rpms: The building process is performed by build_rpm.sh script. This script will perform the following steps:

  • Create rpm building environment (devault ~/rpm)
  • Copy the spec file contrib/davinci.spec to the ~/rpm/SPECS and inject the latest davinci version (from version.h).
  • Copy the source file to ~/rpm/SOURCES
  • Create the appropriate directory name.
  • Invoke rpmbuild

When rpm is installed the files are installed as follows:

  • Binary /usr/bin/davinci
  • Libraries /usr/lib/libdavinci* /usr/lib/libiomedley*
  • Modules /usr/lib/davinci
  • Docs /usr/share/davinci/docs
  • Examples /usr/share/davinci/examples
  • Library Scripts /usr/share/davinci/library

Operating System: Mandriva Linux 2007

Dependencies

  • libhdf5, libhdf5-devel (HDF support)
  • libltdl, ltdl-devel (fixes error regarding ltdl, or "libtool dynamic linking")
  • libxorg-x11, libxorg-x11-devel (X11 support - for GUI module)
  • lesstif, lesstif-devel (Motif development files - for GUI module)
  • libreadline, libreadline-devel (might not be necessary, but no harm in trying)
  • libtermcap, libtermcap-devel (related to readline)
  • libncurses, libncurses-devel (also related to readline)

Installation Procedure

  1. As root, type "urpmi [name]" to install, or use drakrpm for a menu interface):
  2. Install all dependencies listed above
  3. Reboot after installing dependencies, (this may have fixed an error that occurred while making readline)
  4. change into the iomedley directory
  5. "./configure"
  6. "make"
  7. change to the davinci directory
  8. "./configure"
  9. "make"
  10. "make install"
Personal tools