Compiling Davinci

From DavinciWiki
(Difference between revisions)
Jump to: navigation, search
 
(7 intermediate revisions by 4 users not shown)
Line 2: Line 2:
  
 
* SVN: http://oss.mars.asu.edu/svn/davinci/davinci/trunk/
 
* SVN: http://oss.mars.asu.edu/svn/davinci/davinci/trunk/
* Old SVN: file:///tes/svn/dev/davinci
 
  
==== 64-bit Source ====
 
* http://oss.mars.asu.edu/svn/davinci/davinci/branches/64bit/
 
  
 
== Dependencies ==
 
== Dependencies ==
Line 28: Line 25:
 
  $ make
 
  $ make
 
  $ make install
 
  $ make install
 +
 +
If you are installing Davinci for the first time, you may need to set your .dvrc file to load the Davinci Scripts Library as detailed in [[Installation_FAQ]].
  
  
Line 50: Line 49:
 
  $ make
 
  $ make
 
  $ sudo make install
 
  $ sudo make install
 
== Operating System: Mac OS X 10.4.8 ==
 
 
=== Dependencies ===
 
*Mac OS X 10.4.X
 
*Xcode2
 
*Apple X11 or XDarwin
 
*xv ([http://homepage.mac.com/eric.lee/xv/xv-3.10a-darwin.zip binary])
 
*#Unzip and move to /usr/local
 
*gnuplot
 
*# download and install aquaterm ([http://downloads.sourceforge.net/aquaterm/AquaTerm1.0.0.dmg?modtime&#611126972696&big_mirror=0 source])
 
*# download and install gnuplot ([http://downloads.sourceforge.net/gnuplot/Gnuplot-4.0.0.dmg?modtime=1098884180&big_mirror=0 source])
 
*hdf5 ([ftp://ftp.hdfgroup.org/HDF5/current/src source])
 
*#configure with "./configure --enable-hdf5v1_4=yes --prefix=/usr/local"
 
*#make
 
*#sudo make install
 
**NOTE: also requires zlib (should already be installed [ftp://ftp.hdfgroup.org/lib-external/zlib/1.2/src source])
 
  
 
=== Installation Procedure ===
 
=== Installation Procedure ===
Line 157: Line 139:
 
  make
 
  make
 
  make install
 
  make install
 
 
  
 
To add ISIS3 reading (and eventually write) support:
 
To add ISIS3 reading (and eventually write) support:
Line 172: Line 152:
 
  --with-qmv=/mars/common/qmv/ \
 
  --with-qmv=/mars/common/qmv/ \
 
  --with-readline=/usr/lib64
 
  --with-readline=/usr/lib64
 +
make
 +
make install
 +
 +
 +
For the latest versions of ubuntu this command has woreked well:
 +
./configure --prefix=/usr \
 +
--disable-libisis \
 +
--with-modpath=/usr/lib64/davinci \
 +
--with-help=/usr/share/davinci/docs/dv.gih \
 +
CFLAGS=-fPIC CXXFLAGS=-fPIC \
 +
--disable-jbig --disable-lzma
 
  make
 
  make
 
  make install
 
  make install
Line 211: Line 202:
  
 
== Building RPM ==
 
== Building RPM ==
 +
 +
'''This is outdated and wrong'''
 +
  
 
Before you start building rpms, make sure you have rpmbuild installed.  
 
Before you start building rpms, make sure you have rpmbuild installed.  
Line 220: Line 214:
  
 
  mkdir davinci
 
  mkdir davinci
  svn checkout file:///tes/svn/dev/davinci/trunk davinci
+
  svn checkout http://oss.mars.asu.edu/svn/davinci/davinci/trunk davinci
  svn checkout file:///tes/svn/dev/davinci_build/trunk/linux davinci/build_utils
+
  svn checkout http://oss.mars.asu.edu/svn/davinci/davinci_build/trunk/linux davinci/build_utils
 
  cd davinci/build_utils
 
  cd davinci/build_utils
 
  ./build_rpm
 
  ./build_rpm

Latest revision as of 08:41, 21 August 2019

Contents

[edit] Source


[edit] Dependencies

Davinci has the following optional dependencies it will search for. Davinci will operate without these but some functions may not be available.

* Readline
* X11/Xt
* Motif
* HDF5
* Vicar
* libisis
* FITS
* QMV
* libisis3
* Qt4

It may also be useful to set the display program with --with-viewer=foo, the text editor with --with-editor=foo, and the plotting program with --with-gnuplot=foo

[edit] Standard Linux Building Procedure

As root type the following commands.

$ ./configure
$ make
$ make install

If you are installing Davinci for the first time, you may need to set your .dvrc file to load the Davinci Scripts Library as detailed in Installation_FAQ.


[edit] Operating System: Mac OS X 10.6.4

[edit] Dependencies

  • Mac OS X 10.6.x
  • Xcode 3.2 (with X11)
  • MacPorts (Download)
  • xv (binary)
    • Unzip and move to /usr/local/bin or /opt/local/bin
  • gnuplot
$ sudo port install gnuplot
  • hdf5
$ sudo port install hdf5

[edit] Installation Procedure

  1. Download the most recent davinci source
$ tar zxf davinci-x.xx
$ cd davinci-x.xx/
$ env CPPFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib" ./configure
$ make
$ sudo make install

[edit] 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" for a non-X11 compile. The --prefix allows the user to specify the installation directory.
$ ./configure --prefix="INSTALL DIRECTORY"
$ make
$ sudo make install

[edit] 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.

[edit] 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.82)

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

[edit] Davinci Installation

Davinci can be installed using GCC so the CC variables have to be changed back to gcc This configuration was used on a test Solaris 10 Sparc 64-bit system and Davinci was built successfully. You may not necessarily follow these steps.

Building Utilities

- gcc: /usr/sfw/bin/gcc

- make: /usr/sfw/bin/make -> /usr/sfw/bin/gmake

setenv PATH ${PATH}:/usr/sfw/bin
setenv PATH ${PATH}:/usr/csw/bin
setenv PATH ${PATH}:/usr/ccs/bin
 
setenv CC /usr/sfw/bin/gcc
setenv CXX /usr/sfw/bin/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 -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

If the "install" script is missing from your path, use /usr/ucb/install

setenv PATH /usr/ucb:${PATH}

At the end perform the installation as root

make install

[edit] Building Davinci for Linux 64-bit

The position independent code needs to be enabled. For example

./configure
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

For a more complete build, configure with

./configure --with-isis3=/mars/common/isis3/x86_64_Linux/isis \
CFLAGS="-fpic" QTDIR=/usr/lib64/qt4 \
--enable-libisis=/mars/common/isis/isisr/
--with-qmv=/mars/common/qmv/ \
--with-readline=/usr/lib64
make
make install


For the latest versions of ubuntu this command has woreked well:

./configure --prefix=/usr \
--disable-libisis \
--with-modpath=/usr/lib64/davinci \
--with-help=/usr/share/davinci/docs/dv.gih \
CFLAGS=-fPIC CXXFLAGS=-fPIC \
--disable-jbig --disable-lzma
make
make install

[edit] 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

[edit] Building RPM

This is outdated and wrong


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 http://oss.mars.asu.edu/svn/davinci/davinci/trunk davinci
svn checkout http://oss.mars.asu.edu/svn/davinci/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
Personal tools