Installing AdSec Software

Account Requirements

bash

In the ~/.bashrc startup file the environment setup for the AdSec must be read. To do this the .bashrc should include the lines

if [ -f adopt_environment.sh ]; then
        . adopt_environment.sh
fi

adopt_environment.sh bash environment definitions for AdSec

This adopt_environment.sh can be copied from the AOeng account with the command:
% cp /home/aoacct/adopt_environment.sh .

csh

In the ~/.cshrc startup file the environment setup for the AdSec must be read. To do this the .cshrc should include the lines

source ${HOME}/adopt_environment.csh

adopt_environment.csh csh environment definitions for AdSec

This adopt_environment.csh can be copied from the AOeng account with the command:
% cp /home/dlmiller/adopt_environment.csh .

Environment variables

Environment Variable Value(s) Description
ADOPT_HOME /home/"account"/AO Directory of executable versions of the AO Supervisor
ADOPT_ROOT /home/"account"/AO/current Pointer to the current operational version of the AO Supervisor
ADOPT_SOURCE /home/"account"/releases/ASMSX20150528 Directory with the current source for the AO Supervisor (checked out from svn)
ADOPT_LOG /local/aolog/current Directory where log files are written
ADOPT_MEAS /local/aomeas Base directory containing flat files (adsec_calib/flat/Applicable/*.sav)
ADOPT_SIDE L or R Side of the AO Supervisor
ADOPT_SUBSYSTEM ADSEC or WFS Subsystem of the AO Supervisor
where "account" is the home directory of the appropriate account (e.g. aoacct, dlmiller, etc)

SVN checkout of AO Supervisor Source Code (from Arcetri)

Login to the "account"
% mkdir releases  (if does not already exist)
% cd releases
% svn checkout svn+ssh://"account"@adopt.arcetri.astro.it/aogroup/svn/AOSupervisor/branches/ASMSX20150528 new_ASMSX20150528
"account"@adopt.arcetri.astro.it's password: 
"account"@adopt.arcetri.astro.it's password:      ==> you are asked for you password twice for some reason

A    new_ASMSX20150528/GUIs
A    new_ASMSX20150528/GUIs/Housekeeper
A    new_ASMSX20150528/GUIs/Housekeeper/PlotForm.cpp
A    new_ASMSX20150528/GUIs/Housekeeper/Housekeeper_gui.cpp
...
...  several hundred files are checked out
...
A    new_ASMSX20150528/StartUp/ao_start.py
A    new_ASMSX20150528/StartUp/init_rtdb_adsec.py
A    new_ASMSX20150528/StartUp/conftest
 U   new_ASMSX20150528
Checked out revision 3935.

Set environment variables

Now that new AO Supervisor source code has been checked out, several environment variable in /home/"account"/adopt_environment.sh (or .csh) must be changed.

There variables to set are:

ADOPT_SOURCE /home/"account"/releases/"release_name" "release_name" = new_ASMSX20150528
ADOPT_SIDE L or R L for SX
ADOPT_SUBSYSTEM ADSEC or WFS ADSEC
% cd
% vi adopt_environment.sh  (or emacs adopt_environment.csh)
     => Change ADOPT_SOURCE, ADOPT_SIDE, ADOPT_SUBSYSTEM
     => Save file and exit editor
% source adopt_environment.sh (or .csh)  (or logout of "account" and log back in)

Compilation of Third Party Packages

In order to compile the AO Supervisor there are several third party package
% cd $ADOPT_SOURCE
% make contrib

The compilation takes about a minute. After making contrib, the addition files are

dlmiller@adsecsx:75 % svn status
?       contrib/parapin-1.5.1-beta1
?       contrib/cfitsio
?       contrib/qwt-5.1.2

To make the AO Supervisor

Compilation of AO Supervisor

% cd $ADPOT_SOURCE
% make all

The compilation takes about 11 minutes.

Installing AO Supervisor in executable directories

The directory /home/"account"/AO/current is included in your PATH. In this way, where ever the symbolic link /home/"account"/AO/current points is the AO Supervisor build which will be used.

To create a new AO Supervisor build directory simply remove the current symbolic link. The "make install(*)" commands in the ADOPT_SOURCE directory will create the directory defined in ADOPT_ROOT (usually defined to /home/"account"/AO/current in the ~/adopt_environment.sh file), the needed subdirectories and populate them with all the executable, configuration and calibration files.

WARNING: if you do not remove the symbolic link /home/"account"/AO/current, the following "make install(*)" commands will overwrite the current build with the newly complied build from the new source.
% cd
% mkdir AO   (if it does not already exist)
% cd AO
% rm current  (if it exists)
% cd $ADOPT_SOURCE
% make install
% make install-conf
% make install-calib

We have now created and new build directory called /home/"account"/AO/current.

In order to use symbolic links to point to different builds instead of the newly create current director we must move the current directory to new_ASMSX20150528 and pointed /home/"account"/AO/current to it.
% cd
% cd AO
% mv current new_ASMSX20150528      (or some reasonable name)
% ln -s new_ASMSX20150528 current

To change the current build:
% cd
% cd AO
% rm currrent
% ln -s "different_build" current

     bash shell
% hash -r

     csh shell
% rehash

In each build on each of the four machine there is a symbolic link that is not created in order for the AO Supervisor to work

      adsec machine
% cd $ADOPT_ROOT/conf/adsec

        adsecsx 
% ln -s 672b current

            OR

        adsecdx 
% ln -s 672a current


   wfs machine
% cd $ADOPT_ROOT/conf/wfs

      wfssx
% ln -s W1 current
wfsdx % ln -s W2 current

% cd $ADOPT_ROOT/calib/wfs

wfssx
% ln -s W1 current

wfsdx
% ln -s W2 current

-- %USERSIG{DougMiller - 2015-06-03}%
Topic revision: r11 - 02 Nov 2015, GregoryTaylor
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback