Skip to content
Mark Potts edited this page Feb 28, 2020 · 87 revisions

Welcome to the NCEPLIBS-external wiki!

NCEPLIBS-external and NCEPLIBS contain all the libraries required to build the UFS Weather Model and the UFS Medium-Range Weather Application. The repositories also include scripts that will help you build those libraries.

There are two categories of libraries that are needed:

  1. Bundled libraries (NCEPLIBS). These are libraries developed for use with the UFS Weather Model. Most have a NCEPLIBS prefix in the repository, e.g. NCEPLIBS-bacio. Select tools from the UFS Utilities repository (UFS-UTILS) are also included in this category.
  2. Third-party libraries (NCEPLIBS-external). These are libraries that were developed external to the UFS Weather Model. They are general software packages that are also used by other models in the community. Building these is optional, since existing builds of these libraries can be pointed to instead.

NOTE: The libraries in NCEPLIBS-external must be built before the libraries in NCEPLIBS.

Documentation and User Support

Detailed documentation on building NCEPLIBS-external and setting up different platforms are in the top-level README.md, as well as in the doc/README_*.txt files of the repository.

At the end of each of the doc/README_*.txt, information is provided on how to load the libraries on preconfigured platforms or set the required variables on supported platforms.

Note that for preconfigured platforms, the CIME workflow of the ufs-mrweather-app already contains this information and the user does not have to load modules or set environment variables for NCEPLIBS-external or NCEPLIBS.


See this link for an explanation of which platforms and compilers are supported. This will help to determine if you need to build NCEPLIBS and NCEPLIBS-external or are working on a system that is already pre-configured. On pre-configured platforms, the libraries are already available.

It is a good idea to check the platform- and compiler-specific README files in the doc/ directory of this repository as a first step, to see if your system or one similar to it is included. These files have detailed instructions for building NCEPLIBS-external, NCEPLIBS, and the UFS Weather Model. They may be all the documentation you need. Be sure to use the branch or tag that corresponds to the version of the application or model code that you are using, and define a WORK directory path before you get started.

If your platform is not included in the platform- and compiler-specific README files, there is a more generic set of instructions in the README file at the top level of this repository, and at the top level of the NCEPLIBS repository. It may still be a good idea to look at some of the platform- and compiler-specific READMEs as a guide. Again, be sure to use the branch or tag that corresponds to the version of the code that you are using.

The top-level README in this repository includes a troubleshooting section that may be helpful.

You can also get expert help through a user support forum set up specifically for issues related to build dependencies.

image_2002_build_support_forum