MIDAS environment variables

From MidasWiki
Jump to navigation Jump to search


Introduction

MIDAS uses a several environment variables to facilitate the startup of the different applications. Only MIDASSYS is required.

The MIDAS environment variables are also discussed in Compilation & Build and QuickStart.

NOTE
Except where noted, the following environment variables are defined on the MIDAS experiment host, i.e. the host on which the MIDAS experiment shared memories are residing.




MIDASSYS

This environmental variable is required. It should point to the main path of the installed MIDAS package on the experiment host e.g.

csh
setenv MIDASSYS $HOME/packages/midas
bash
export MIDASSYS=$HOME/packages/midas

The application odbedit will generate a warning message unless this variable is defined.





MIDAS_EXPTAB

This variable specifies the location of the optional exptab file containing the predefined MIDAS experiment(s), e.g.

csh
setenv MIDAS_EXPTAB $HOME/online/exptab
bash
export MIDAS_EXPTAB = $HOME/online/exptab

If MIDAS_EXPTAB is not defined, the default location will be used (i.e. for OS_UNIX: /etc, / and for OS_WINNT: \system32, \system ).





MIDAS_SERVER_HOST

If all the MIDAS clients run on the experiment host, this variable is NOT defined.

It is needed when a connection to a remote experiment is requested. In that case, this variable is defined on the remote host(s), and predefines the name of the experiment host. In this case, the mserver client must also be started on the experiment host. See Quickstart for more information.

Defining MIDAS_SERVER_HOST makes adding the "-h <hostname>" argument to the application command unnecessary (see Common Parameters to MIDAS Utilities).

MIDAS_SERVER_HOST will be superseded by MIDAS_DIR if defined. This variable is valid for Unix as well as Windows OS.




MIDAS_EXPT_NAME

Where there are multiple experiments available on the MIDAS experiment host, this variable predefines the name of the experiment to which the user wishes to connect. It prevents the requested application from asking for the experiment name. Defining MIDAS_EXPT_NAME makes adding the "-e <exptname>" argument to the application command unnecessary (see Common Parameters to MIDAS Utilities).

In addition, when the MIDAS_DIR environment variable is used, then MIDAS_EXPT_NAME must be set to the experiment name. This is equivalent to the exptab file where we also have name and directory. If you use the exptab file, you don't need MIDAS_EXPT_NAME for that.




MIDAS_DIR

This variable predefines the LOCAL directory path where the shared memories for the experiment are located. Defining this variable results in a single experiment called "Default". Since a given directory path can only refer to a single experiment, MIDAS_DIR supersedes the "-e <exptname>" and "-h <hostname>" arguments as well as the MIDAS_SERVER_HOST and MIDAS_EXPT_NAME environment variables.

Note
If you wish to use the exptab file to define multiple experiments on a single host, do not define MIDAS_DIR.




MIDAS_INVALID_STRING_IS_OK

Note
Environment variable MIDAS_INVALID_STRING_IS_OK and UTF-8 key check added Jan 2017.

By default, the ODB keys names are checked to ensure they are UTF-8 compliant (see ODB Keys for more information).

Defining environment value MIDAS_INVALID_STRING_IS_OK (set to any value) disables this key check. The existence of this environment value is only checked for once, when a program starts.





ROOTSYS

This variable must point to the ROOT package if generating a complete MIDAS/ROOT analyzer application. If not using ROOT, ROOTSYS should be undefined.




CERNLIB_PACK

In case of HBOOK/PAW analyzer application, this variable should be pointing to a valid cernpacklib.a library. See HAVE_HBOOK.




MIDAS_FRONTEND_INDEX

This variable predefines the index assigned to the equipment using the event builder option. Useful if the Frontend Applications are started from different hosts. Refer to Event Builder and related frontend fragment for more information.



MCHART_DIR

This variable is used for the old mchart utility.