GEOS GCM Quick Start: Difference between revisions
No edit summary |
No edit summary |
||
Line 31: | Line 31: | ||
module load GEOSenv | module load GEOSenv | ||
which obtains the latest <code>git</code>, <code>CMake</code>, and <code> | which obtains the latest <code>git</code>, <code>CMake</code>, and <code>mepo</code> modules. | ||
== Cloning the Model == | == Cloning the Model == | ||
Line 48: | Line 48: | ||
git clone -b v10.17.0 https://github.com/GEOS-ESM/GEOSgcm.git | git clone -b v10.17.0 https://github.com/GEOS-ESM/GEOSgcm.git | ||
== Building GEOS == | == Building GEOS == | ||
Line 59: | Line 57: | ||
==== Develop Version of GEOS GCM ==== | ==== Develop Version of GEOS GCM ==== | ||
<code>parallel_build.csh</code> provides a special flag for checking out the development branches of GEOSgcm_GridComp and GEOSgcm_App. If you run: | |||
<pre>parallel_build.csh -develop</pre> | |||
then <code>mepo</code> will run: | |||
<pre>mepo develop GEOSgcm_GridComp GEOSgcm_App</pre> | |||
==== Debug Version of GEOS GCM ==== | ==== Debug Version of GEOS GCM ==== | ||
To obtain a debug version, you can run <code>parallel_build.csh -debug</code> which will build with debugging flags. This will build in <code>build-Debug/</code> and install into <code>install-Debug/</code>. | To obtain a debug version, you can run <code>parallel_build.csh -debug</code> which will build with debugging flags. This will build in <code>build-Debug/</code> and install into <code>install-Debug/</code>. | ||
==== | ==== Debug Version of GEOS GCM ==== | ||
To obtain a debug version, you can run <code>parallel_build.csh -debug</code> which will build with debugging flags. This will build in <code>build-Debug/</code> and install into <code>install-Debug/</code>. | |||
=== Multiple Steps for Building the Model === | === Multiple Steps for Building the Model === | ||
The steps detailed below are essentially those that <code>parallel_build.csh</code> performs for you. Either method should yield identical builds. | The steps detailed below are essentially those that <code>parallel_build.csh</code> performs for you. Either method should yield identical builds. | ||
==== Mepo ==== | ==== Mepo ==== | ||
The GEOS GCM is comprised of a set of sub-repositories. These are managed by a tool called [https://github.com/GEOS-ESM/mepo mepo]. To clone all the sub-repos, you can run <code>mepo clone</code> inside the fixture: | |||
<pre>cd GEOSgcm | |||
mepo clone</pre> | |||
The first command initializes the multi-repository and the second one clones and assembles all the sub-repositories according to <code>components.yaml</code> | The first command initializes the multi-repository and the second one clones and assembles all the sub-repositories according to <code>components.yaml</code> | ||
==== Checking out develop branches of GEOSgcm_GridComp and GEOSgcm_App ==== | |||
To get development branches of GEOSgcm_GridComp and GEOSgcm_App (a la the <code>-develop</code> flag for <code>parallel_build.csh</code>, one needs to run the equivalent <code>mepo</code> command. As mepo itself knows (via <code>components.yaml</code>) what the development branch of each subrepository is, the equivalent of <code>-develop</code> for <code>mepo</code> is to checkout the development branches of GEOSgcm_GridComp and GEOSgcm_App: | |||
<pre>mepo develop GEOSgcm_GridComp GEOSgcm_App</pre> | |||
This must be done ''after'' <code>mepo clone</code> as it is running a git command in each sub-repository. | |||
==== Build the Model ==== | ==== Build the Model ==== | ||