Compiling Davinci

From DavinciWiki
(Difference between revisions)
Jump to: navigation, search
(Building Davinci for Mars Space Flight Facility)
(Building RPM)
Line 86: Line 86:
 
Building process as non-root user:
 
Building process as non-root user:
  
  $ mkdir davinci
+
  mkdir davinci
  $ svn checkout file:///tes/svn/dev/davinci/trunk davinci
+
  svn checkout file:///tes/svn/dev/davinci/trunk davinci
  $ svn checkout file:///tes/svn/dev/davinci_build/trunk/linux davinci/build_utils
+
  svn checkout file:///tes/svn/dev/davinci_build/trunk/linux davinci/build_utils
  $ cd davinci/build_utils
+
  cd davinci/build_utils
  $ ./build_rpm
+
  ./build_rpm
  
 
If everything went alright, the rpm files should be created on the  davinci/build_utils directory.
 
If everything went alright, the rpm files should be created on the  davinci/build_utils directory.
Line 110: Line 110:
 
*Examples /usr/share/davinci/examples
 
*Examples /usr/share/davinci/examples
 
*Library Scripts /usr/share/davinci/library
 
*Library Scripts /usr/share/davinci/library
 
 
 
  
 
== Operating System: Mandriva Linux 2007 ==  
 
== Operating System: Mandriva Linux 2007 ==  

Revision as of 11:29, 19 May 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

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 


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