Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If doing development and fixing compile errors, it would probably be most efficient to run make directly rather than going through case.build. Be sure not to forget to source $case/.env_mach_specific.sh first so that your environment matches the CIME build environment. 'cd $EXEROOT/cmake-bld' and just run 'make' ( you can add -jN of course too). Note: once the build is complete, you'll still need to run case.build in order for CIME bookkeeping to occur; it should only take a few seconds.

Examining flag settings for a component

Assuming you are in $EXEROOT/cmake-bld, a nice synopsis of the flag settings for a component can be found in cmake/$comp_class/CMakeFiles/$comp_class.dir/flags.make

For example, for atm:

Code Block
% cat cmake/atm/CMakeFiles/atm.dir/flags.make

This will nicely show default flags for each language, includes, cpp defs, and per-file flag customizations.

Examining link flags for E3SM

Leaving aside the static lib creation, there's only one interesting link command in our build: the linking of the e3sm.exe executable. You can see what this command will be by looking at cmake/cpl/CMakeFiles/e3sm.exe.dir/link.txt

Temporarily tweaking compiler flags for a broken file

...