IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changes between Initial Version and Version 1 of ParallelIPPvers


Ignore:
Timestamp:
Feb 24, 2009, 4:23:57 PM (17 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ParallelIPPvers

    v1 v1  
     1= Making an IPP installation accessible to multiple users =
     2
     3= Setting up a global psconfig directory =
     4
     5There's one directory where all IPP installations live. By default, it's ~/psconfig/ but you can make it a different location by creating a file ~/.psconfigrc which contains
     6 
     7 set PSCONFDIR = /IPP/
     8
     9Then create a directory $PSCONFDIR/psconfig and copy the psconfig.bash and psconfig.csh scripts there from the source tree (this is something that the build/install will probably do automatically in future).
     10
     11The only thing that's missing is an alias for psconfig that reads those .csh or .bash files:
     12
     13 bash: alias psconfig='source /IPP/psconfig.csh'
     14 csh:  alias psconfig "source /IPP/psconfig.bash"
     15
     16Alternating between versions installed in a global directory and versions installed in your own home directory is possible, but you need to unset PSCONFDIR, make sure that there's no .psconfigrc (e.g. by renaming it), and point psconfig at the different different directory, so I don't recommend it.
     17
     18To run pantasks, your startup file ~/.bashrc or ~/.tcshrc needs to execute psconfig; see [wiki:Pantasks_FAQ#Why_are_my_nodes_"down"_or_"resp"? Pantasks_FAQ#Why are my nodes "down" or "resp"?]
     19
     20== Setting an alias ==
     21
     22If ipp was installed with
     23
     24 psbuild -bootstrap PSCONFDIR
     25
     26the psconfig.bash and psconfig.csh point to the IPP installations in PSCONFDIR by default. Thus, for other users to use a given IPP install, they just need to create the same psconfig alias as the person who installed IPP, i.e.
     27
     28 alias psconfig="source PSCONFDIR/psconfig.bash"
     29
     30for bash, or
     31
     32 alias psconfig "source PSCONFDIR/psconfig.csh"
     33
     34for [t]csh.
     35
     36PSCONFDIR needs to be readable by all the intended users, of course, '''AND NEEDS TO BE IDENTICAL TO WHAT'S SET IN ~/.psconfigrc'''.
     37
     38In Heidelberg, there's always a softlink ipp-default pointing to the most recent installed version of IPP. To use that, then just issue the command
     39
     40 psconfig ipp-default
     41
     42on the command-line.
     43
     44'''Important:''' To use multiple hosts in parallel in pantasks, your startup file needs to call psconfig. If you do that, there is an [http://pan-starrs.ifa.hawaii.edu/bugzilla/show_bug.cgi?id=1079 unfortunate bug in IPP (1079)] that will break at least the ''man'' command, and maybe more.
     45
     46== Setting up individual config files ==
     47
     48IPP has a config file hierarchy. There are two per-user config files:
     49
     50 ~/.ipprc # Definitions for psphot etc.
     51 ~/.ptolemyrc # Definitions for dvo
     52
     53There are templates for both files, so to begin with, just copy those into your home directory. In Heidelberg, suitable templates are at
     54
     55 cp /IPP/ipprc.template ~/.ipprc
     56 cp /IPP/ptolemyrc.template ~/.ptolemyrc
     57
     58The configuration system is hierarchical, with defaults in the global ippconfig directories that can be overridden by definitions in user-specified directories. E.g. to include camera definitions that are located in your own file area, edit the PATH in .ipprc:
     59
     60 PATH           STR     /home/jester/IPP/ippconfig/:MYINSTALLDIR/share/ippconfig:
     61
     62This looks for any required configuration files first in /home/jester/IPP/ippconfig/ and if it does not find a match there, takes the IPP-wide defaults. At present, you have to replicate an entire file in your own area if you want to change a single setting from the default. Also note that there is an internal hierarchy, with files in the recipes/ folder setting defaults that can be overriden in camera-specific files; the catch is that a concept MUST be present in the recipes/ version of a config file (i.e. you can't add new things in a camera-specific file).
     63
     64In general, the configuration system may be changing, so that a per-user configuration that works with one version of IPP may cease to work with the next release. Thus, it may be necessary to compare the local versions of .ipprc, .ptolemyrc and any individual camera config files with their defaults from the new IPP version (in MYINSTALLDIR/share/ippconfig).
     65
     66= Compiling =
     67
     68== In general ==
     69
     70Get IPP tarfile or export from cvs and set the new version ID; including the date if from cvs, or using the version number if a numbered release
     71 # Access IPP cvs
     72 export CVSROOT=cvs.pan-starrs.ifa.hawaii.edu:/cvsroot/pan-starrs; export CVS_RSH=ssh
     73 # Get IPP (here from cvs, by date)
     74 cd /IPP/
     75 cvs export -D 2008-11-11 -d ./cvs-20081111 ipp
     76 # Set psconfig id of new version
     77 psconfig cvs-20081111
     78 # Install autoconf 2.61 which is needed
     79 cd /IPP/extlibs/autoconf-2.61
     80 ./configure --prefix=/IPP/cvs-20081111.lin64/
     81 make && make install
     82 # Point to where CFITSIO will be
     83 export CFITSIO=/IPP/cvs-20081111.lin64/
     84 # Install IPP
     85 cd /IPP/cvs-20081111/psconfig/
     86 psbuild -dev -extbuild
     87 # omit the -dev if building from a version-numbered tarball
     88
     89If using pantasks, update your <code>~/.bashrc</code> (or equivalent) to point to the new version. Done!
     90
     91== Just Ohana / dvo ==
     92
     93I wanted an install tree that has just Ohana i.e. dvo. To do that, I say
     94
     95 psconfig dvo-2.2
     96
     97which sets up a new install tree $PSCONFDIR/dvo-2.2. I then compile and install only Ohana:
     98
     99 psbuild -only Ohana -rebuild -clean
     100
     101I definitely need -rebuild because otherwise there may still be files pointing to the previous install directory and nothing happens because those are still up to date. I just threw in -clean for good measure, as I wouldn't bet on everything working without it.
     102
     103'''Note''' both of these don't quite work automatically, as any libraries that are not installed in /usr/local or another standard location need to be copied into the version-dependent tree's include/ and lib/ subdirectories.
     104
     105== Just analysis tools but not pipeline or anything that requires sql ==
     106
     107 psconfig ipp-2.2-nosql
     108 psbuild -only Ohana -rebuild && psbuild -start psLib -stop ppSim -rebuild && psbuild -only ippconfig -rebuild
     109
     110I tried these without -clean and will see what happens.
     111
     112= Running =
     113
     114To use my just-Ohana tree, I log in and say
     115
     116 psconfig dvo-2.2
     117
     118I can then use dvo.
     119
     120Similarly, for the analysis-only distribution I say
     121
     122 psconfig ipp-2.2-nosql
     123
     124and can run psphot.