Setting Up Your Shell Environment
Sourceme Script
Before you can check out or build a CLARAty sandbox, you will need to setup your shell environment appropriately. Make sure that:
- You are running
tcsh. If not, typetcshat the prompt to start it - You log into AFS at JPL.
- You have both read and write permissions to the
/afs/jpl.nasa.gov/group/claraty/directory. If not, you may not be a member of the claraty group. - You source one of the setup scripts in the CLARAty AFS space which the proper site_name suffix:
The sourceme script sets the proper environment variables for running Yam Lite and CLARAty. These variables include the project name (CLARAty), the location of configuration files and 3rd party libraries, the location of the perl version to run Yam Lite, and the location of the Yam Lite installation.
where <site_name> is either jpl or external. If you need to customize the CLARAty souceme file, make a copy of this external directory to your local file system or get approval for adding a directory to the above directory and edit as necessary. Use the files defined in the external directory above as a model to define the appropriate environment variables. You must source this file in every shell that you use.
If you get an error Variable name too long, most likely, you using csh. Type tcsh at the prompt and retype the above line. You can switch your default shell to tcsh. Please contact your system administrator to make this change.
We recommend that you make an alias for the above command that is appropriate for your institution and add it to your .cshrc file.
Cross Compiling
If you want to build (cross-compile) CLARAty code for a different target, you need to either set the YAM_TARGET to the architecture that you are cross compiling for or specify that variable manually on the command line of make as follows:
or
If you are cross compiling for a rover, you do not have to set the above variables. These will be automatically set the appropriate target by running one for the following scripts below. Each script defines additional environment variables needed to run the rovers or simulation. For rovers than run the VxWorks operating system, this script will also setup the proper tools for working with the VxWorks operating system:
rocky7
fido
roams
If you just want to run with the vxWorks simulator or with other vxWorks system, you can invoke the appropriate Tornado scripts instead of the rover script. The rover script invokes the proper Tornado script
tr22_x86 (for Tornado 2.2 running VxWorks on an x86 hardware architecture)
tr22_pcc (for Tornado 2.2 running VxWorks on a PPC hardware architecture)
Building for Multiple Targets
Before committing changes, you will need to build your code for all the actively supported targets. There are a set of single YaM commands that allow you to build your modules for all actively supported targets. However, to do so, you need to have passwordless ssh access to the following machines.