Next Previous Contents

1. Installation

This assumes you have the post-July 2001 release (version 0.6 or later) of partiview, not the earlier "gview" release that was described in earlier versions of this document. We keep copies of some Linux support files (Mesa, FLTK) on our current http://www.astro.umd.edu/nemo/amnh website. Although more current versions of support libraries may be available, they may not have been tested out. This release has been tried on Linux (red hat 6.2, 7.1, 7.2), Irix and Windows. Additional comments were added how to compile and run under a more modern version of redhat,e.g. Fedora Core 3.

partiview needs two libraries to compile: OpenGL (or MESA) for the drawing operations, and FLTK for the graphical user interface. These libraries are known to work on MS-Windows as well as many Unix flavors. Newer version of X-windows (notably xorg-x11-Mesa) also work.

1.1 MESA/OpenGL

First make sure Mesa is installed, for redhat6.2 there are rpm files available. For redhat7.1+ they are now included in the basic distribution. Check if you have something like the following (version numbers may be different):


       % rpm -qa | grep Mesa
       Mesa-3.2-2
       Mesa-devel-3.2-2

else:

       % rpm -i Mesa-3.2-2.i686.rpm Mesa-devel-3.2-2.i686.rpm

for Fedora Core 3 you will need
       xorg-x11-Mesa-libGLU-6.8.1-12.FC3.21
       xorg-x11-Mesa-libGL-6.8.1-12.FC3.21
or variations thereof. This particular version worked for FC3.

You should have both installed. Some packages will use libMesaGL, others libGL. Our configure script (see below) should take care of the two possible options.

Homepage: http://mesa3d.sourceforge.net/

Redhat packages: (part of powertools I believe)

Mesa3D is under continuous development. As of this writing the stable release is 4.0.1, but it has not been tested with the current partiview release. Redhat 7.1 comes with Mesa-3.4 and also works with partiview. You can also use a CVS release of Mesa.

1.2 FLTK

Also make sure FLTK is installed. If you got our version, do this (as root)


       % locate libfltk.a 
       % locate Fl_Slider.h

if they fail, then

       % cd <where-ever>/fltk-1.0.9
       % make install
  

(you only need it if you want to recompile the program at some point, not if you just want to run it)

Homepage: http://www.fltk.org/

Redhat packages: http://www.cs.cornell.edu/nogin/RPM/fltk-devel.html

Find rpms: http://rpmfind.net

FLTK is under continuous development. Versions from 1.0.9 through 1.1.0rc3 have been successfully tested with partiview. Some problems with other versions exist, but 1.1.4 is also known to work. The upcoming 2.0 version of FLTK is unlikely to work with partiview.

A more recent example with which partiview was compiled was fltk 1.1.4. On Fedora Core 3 this is available as RPM in the fedora-extras repository. The following 3 rpm's were needed and lead to a successfull compile:



    fltk-1.1.4-8
    fltk-fluid-1.1.4-8
    fltk-devel-1.1.4-8

and use

    --with-fltk=/usr

in the configure step of building partiview (see below)


       % tar zxf partiview-0.6.tar.gz

       % cd partiview-0.6/src
       % make clean                (if you really must compile a new executable)
       % ./configure               (GNU autoconf toolset to ease installation)
       % make depend               (might need to make new local dependancies)
       % make partiview            (should not have to edit Makefile anymore)

1.3 partiview

You can decide to use a branded version, usually available as a tar or zip file, or use the CVS (see below). Extract the tarball, and install the program from within the src directory:


       % tar zxf partiview-0.6.tar.gz

       % cd partiview-0.6/src
       % make clean                (if you really must compile a new executable)
       % ./configure               (GNU autoconf toolset to ease installation)
       % make depend               (might need to make new local dependancies)
       % make partiview            (should not have to edit Makefile anymore)

If you encounter difficulties of locating either the FLTK or MESA/OpenGL libraries, configure script options can specify them: --with-fltk=dirname names the directory which contains the lib and FL subdirectories, --with-mesa=dirname can specify the Mesa installation directory [??], and --with-kira=dirname names the Starlab directory, whose default value is taken from environment variable STARLAB_PATH if that is set.

1.4 CVS

Since version 0.5 partiview is under CVS control, and occasionally we will stamp out a new release when we deem it stable. Anonymous or read-only CVS access is also offered. Currently the CVS repository machine is cvs.astro.umd.edu and you will need to setup your developers account with Peter (teuben@astro.umd.edu). Here's a sample session with some commonly used CVS commands:


 setenv CVSROOT   :pserver:anonymous@cvs.astro.umd.edu:/home/cvsroot
 setenv CVSEDITOR emacs
 setenv CVS_RSH   ssh           (not needed for pserver access though)

 cvs login                      (only needed once, and only for pserver type access)

 cvs checkout partiview              # get a new local sandbox to work in, or

 cd partiview                        # goto the root directory of partiview
 cvs -n -q update                    # check if others had made any changes
 cvs update                          # if so, update your sandbox and/or resolve conflicts

 cd partiview/src                    # goto the 'src' directory of partiview
 ./configure
 emacs partibrains.c                 # edit some files
 make all                            # compile the program
 ./partiview                         # test the program
 emacs kira_parti.cc                 # edit another file
 make all                            # check if it still compiles

 cvs -n -q update                    # check if anybody else made changes
 cvs update                          # if so, update your sandbox again, resolve conflicts

 cvs commit                          # and commit your changes

1.5 Compiling under Windows

Partiview can be compiled from the command line on Windows using either the Microsoft Visual C tools (cl, nmake, etc.) or using gcc/g++ with MinGW32, MSYS and w32api. The MinGW route is currently the only way to compile with kira/Starlab support. There's no provision for building partiview within the MS Visual Studio GUI.

To compile with Microsoft C:

  1. Install FLTK using MS Visual C++ as described in its documentation.
  2. Unpack the partiview distribution from its tarball or via CVS.
  3. Edit the file partiview/src/partiview.mak, changing FLTK_DIR as appropriate.
  4. Run the vcvars32.bat script from the Developer Studio Bin directory; this will set the MSVCDIR environment variable, add the Bin directory to PATH, etc.
  5. In the partiview/src directory, compile with
           nmake -f partiview.mak
    
    Dependencies are not properly maintained by this Makefile, so use nmake -f partiview.mak clean if you change anything.

To compile with MinGW and company, you'll need to:

  1. Install MinGW (gcc, etc.), its associated w32api libraries and header files, and the MSYS suite of UNIX-like tools. All three packages are available at: http://www.sourceforge.net/projects/mingw/ Recent releases of w32api include MinGW versions of OpenGL libraries and headers, which partiview needs. As of June 2002, current versions seem to be mingw-1.0.1-20010726, w32api-1.4-2, and MSYS-1.0.7. Unpack the .zip or .tar archives of MinGW and w32api; both packages are intended to live in the same directory. The MSYS package comes as a self-extracting archive and can be extracted into a different directory as desired. (But don't attempt to merge the MSYS bin directory contents into mingw/bin.)
  2. Add both the MSYS bin subdirectory and MinGW bin subdirectory to the Windows PATH environment variable, with the MSYS directory coming earlier, e.g. in a command window
        set path=%path%;C:\util\msys\1.0\bin;C:\util\mingw\bin
    
    or the analogous setting of PATH using (on WinNT/2000 at least) My Computer -> Control Panel -> System -> Environment to make a permanent change to PATH.
  3. Build FLTK using MinGW. Unpack its source distribution and say
        sh configure
        make
    
  4. Build the Starlab libraries, if desired:
    1. You may need to install CVS for Windows. Binary packages are available; follow the Win32 link on http://www.cvshome.org/downloads.html. Put the resulting cvs.exe file into the PATH somewhere.
    2. Use CVS to checkout the Starlab sources into some directory:
          cd C:\some\where
          set CVSROOT=:pserver:anonymous@cvs.astro.umd.edu:/home/cvsroot
          cvs login
          cvs checkout starlab
          cd starlab
      
    3. Copy templates\starlab_setup.bat to local\starlab_setup.bat, and edit it. Change the first two set commands: set STARLAB_PATH to the installation directory -- in the above example, set STARLAB_PATH=C:\some\where\starlab. Also optionally update (or remove) set PATH=... to add MSYS and MinGW bin directories to it.
    4. From a Windows command window, type
           local\starlab_setup
           make libs  
      
    5. If successful, you should find in the lib directory the files libdstar.a libdyn.a libnode.a librdc.a libsstar.a libstd.a libtdyn.a
  5. Now, back in the partiview/src directory, use configure and make as under Unix. The MSYS package imposes its own UNIX-like syntax for Windows pathnames, which you'll need to use as arguments to configure and friends, with forward- instead of backslashes and a /drive-letter prefix. Also, if typing to a Windows command-window, shell scripts like configure must be explicitly fed to sh. Thus for example if FLTK is installed in C:\util\fltk-1.1.0 and Starlab is in F:\src\starlab, then you might build partiview by typing
            sh configure --with-fltk=/c/util/fltk-1.1.0  --with-kira=/f/src/starlab
            make
    
    Note there's no need to specify the location of the OpenGL or other libraries; the configure script and MinGW tools already know where to find them.


Next Previous Contents