After customizing your build options, and adding any user-modified source code, you are ready to build the case executable.
> cd $CASEROOT > $CASE.$MACH.build |
Diagnostic comments will appear as the build proceeds.
The following line indicates that the component namelists have been generated successfully:
.... CCSM BUILDNML SCRIPT HAS FINISHED SUCCESSFULLY .... |
When the required case input data in $DIN_LOC_ROOT
has been
successfully checked, you will see:
CCSM PRESTAGE SCRIPT STARTING ... ... CCSM PRESTAGE SCRIPT HAS FINISHED SUCCESSFULLY |
Finally, the build script generates the utility and component libraries and the model executable. There should be a line for the mct and pio libraries, as well as each of the components. Each is date stamped, and a pointer to the build log file for that library or component is created. Successful completion is indicated by:
CCSM BUILDEXE SCRIPT HAS FINISHED SUCCESSFULLY |
The build log files have names of the form $model.bldlog.$datestamp
and are located in $RUNDIR
. If they are compressed (indicated by
a .gz file extension), then the build ran successfully.
Invoking $CASE.$MACH.build creates the following
directory structure in $EXEROOT
:
$EXEROOT/atm $EXEROOT/ccsm $EXEROOT/cpl $EXEROOT/csm_share $EXEROOT/glc $EXEROOT/ice $EXEROOT/lib $EXEROOT/lnd $EXEROOT/mct $EXEROOT/ocn $EXEROOT/pio $EXEROOT/run |
The atm/, ccsm/, cpl/, glc/, ice/, lnd/, and ocn/ subdirectories each contain an 'obj/' directory where the compiled object files for the model component is placed. These object files are collected into libraries that are placed in 'lib/' along with the mct/mpeu, pio, and csm_share libraries. Special include modules are also placed in lib/include. The model executable 'ccsm.exe' is placed in $EXEROOT/run along with component namelists. During the model run, component logs, output datasets, and restart files are also placed in this directory.