These environment variables are set by sourcing setup-env.
This is where the system's shared-library loader looks for shared libraries before looking in the system's default shared-library directories (usually /lib, /usr/lib, /usr/local/lib, and /usr/X11R6/lib).
It should contain the two Wigwam library directories, and they should be in this order:
LD_LIBRARY_PATH=$PLAYPEN_ROOT/lib:$PLAYPEN_ROOT/ext/lib |
This is the list of directories where the Unix operating system searches for executables if they don't have a "/" in the name.
It should always start with:
PATH=$PLAYPEN_ROOT/bin:$PLAYPEN_ROOT/ext/bin:... |
In general, you should not need to set "global" environment variables, but if you need them for development, you may add them to anywhere that load-config will source. See the Section called Scripts to Load Certain Configurations into sh-variables in Appendix B for the details.
You must also set interactive_variables to the names of the variables you want to export in to the user's shell. [1]
Generally, you should put environment variables in one of the following places instead. These variables are only set by sourcing the load-config shell script, but that is done automatically by Wigwam for running, building and installing. If you need to run a single command with all the cluster and role environment variables set, you may use wigdo.
If the variable only applies to a particular role.
If the variable only applies to a particular cluster.
If the variable applies cluster-wide.
Packages, however, may not directly set environment variables, yet; instead use service_required_envars and service_optional_envars from the service startup scripts and later the configuration tool will use the descriptions to make an interface to set these.
Note that in Wigwam, we recommend using all-capital names for environment variables and all-lowercase names for sh-variables which are not exported. Not exporting lowercase environment variables makes it easier for scripts to work recursively, and generally without side-effects. Be very clear in your documentation about variables you require to be exported.
| [1] | The reason for using interactive_variables instead of sourcing a sh-script directly, is for greater control and also for allowing csh users to access those environment variables. |