Skip to main content
Jump to: navigation, search

Configuration how-to

Loading Remote Environment Variables for a Synchronized Project

  • An environment variable is a named value associated with a terminal session. Values take the form of strings, but numeric values can be stored and manipulated as strings.
  • Environment variables are local to a terminal session; thus, if you change a variable in a terminal session, its changes affect only that terminal session. They are, however, inherited by child processes. Child processes cannot change environment variables associated with the parent.
  • Two important environment variables important:
    • PATH: paths to binary files. If you have installed software in user space, make sure you update your $PATH to include the path to those binaries; then you can call them from anywhere.
    • LD_LIBRARY_PATH: paths to shared libraries. If an application in your $PATH uses shared libraries not within $LD_LIBRARY_PATH, you'll need to set $LD_LIBRARY_PATH to include them. Otherwise you will get an error such as: " could not find shared library"
  • The command for defining an environment variable is export VAR=VALUE, where VAR is the name of the environment variable and VALUE is the value.
  • After definition, environment variables may be referenced as $VAR, with a dollar sign ($) before the variable name. E.g. echo $VAR following the above definition will print VALUE.
  • E.g.:
    • export GREETING="Hello"
    • export PATH=$PATH:$HOME/bin
  • Environment variables can be set per session on the command line, but are not stored. To store them, one may define them in ~/.bashrc or ~/.profile so that they load on startup (the files ~/.bashrc and ~/.profile contain instructions which execute upon startup of a terminal session). If you change ~/.bashrc or ~/.profile and want to start a new session with its changes, use the command source [filename], as in source ~/.bashrc or source ~/.profile. If you are not using bash, then you will need to change the shell-specific configuration.
  • Make sure the relevant environment variables are set on the proper machine (the machine to compile or execute the binary).

Back to the top