Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

NOAA-EMC NCEPLIBS

  • Thread starter Deleted member 3607
  • Start date

This post was from a previous version of the WRF&MPAS-A Support Forum. New replies have been disabled and if you have follow up questions related to this post, then please start a new thread from the forum home page.

D

Deleted member 3607

Guest
I'm having an issue changing over from NCAR's nceplibs to NOAA-EMC nceplibs github.

Not exactly sure why it isn't making the files.

using the following commands:

Code:
cd $HOME/WRF/Libs
git clone https://github.com/NOAA-EMC/NCEPLIBS.git
cd NCEPLIBS
mkdir -p build && cd build
cmake ..
make

Attached is the log from make
 

Attachments

  • make_log.txt
    3.4 KB · Views: 6
Do you have permissions to install in /usr/local? By not defining a <nceplibs-prefix>, it appears to try and install there. Perhaps try defining that.
Example in the README.md: cmake -DCMAKE_INSTALL_PREFIX=<nceplibs-prefix> ../NCEPLIBS
where the NCEPLIBS will be built and installed in the nceplibs-prefix
 
hertneky said:
Do you have permissions to install in /usr/local? By not defining a <nceplibs-prefix>, it appears to try and install there. Perhaps try defining that.
Example in the README.md: cmake -DCMAKE_INSTALL_PREFIX=<nceplibs-prefix> ../NCEPLIBS
where the NCEPLIBS will be built and installed in the nceplibs-prefix

So if I want to install it to $HOME/WRF/Libs/nceplibs

I would need to have the prefix $HOME/WRF/Libs defined?

I will give that a shot.
 
In that case you would:
export INSTALL_PREFIX=`$HOME/WRF/Libs/nceplibs` (for bash; use setenv for tcsh)
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} ..
 
Quesiton, In NCEPlibs-external it mentions having WGRIB2 ESMF installed. But it isn't required for NOAA-EMC nceplibs. Are these optional?
 
I have always built all libraries when installing NCEPLIBS-external, but as I see those are not requirements for NCEPLIBS, so you could try building the externals without them. I would think it should be fine, but again, I've never tested it.
 
hertneky said:
In that case you would:
export INSTALL_PREFIX=`$HOME/WRF/Libs/nceplibs` (for bash; use setenv for tcsh)
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} ..

Good news is I'm getting some progress. But i'm running into some issues with jpeg library

Code:
Cloning into 'nceplibs-g2'...
HEAD is now at e2daa89 Merge pull request #110 from NOAA-EMC/release/version-update
[ 42%] Performing update step for 'g2'
[ 43%] No patch step for 'g2'
[ 43%] Performing configure step for 'g2'
-- The C compiler identification is GNU 11.2.0
-- The Fortran compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Check for working Fortran compiler: /usr/bin/gfortran - skipped
-- Setting build type to 'Release' as none was specified.
-- Could NOT find JPEG (missing: JPEG_LIBRARY JPEG_INCLUDE_DIR) 
CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Jasper (missing: JASPER_LIBRARIES JASPER_INCLUDE_DIR
  JPEG_LIBRARIES)
Call Stack (most recent call first):
  /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.22/Modules/FindJasper.cmake:62 (find_package_handle_standard_args)
  CMakeLists.txt:24 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/will/WRF/Downloads/NCEPLIBS/build/g2/src/g2-build/CMakeFiles/CMakeOutput.log".
make[2]: *** [CMakeFiles/g2.dir/build.make:92: g2/src/g2-stamp/g2-configure] Error 1
make[1]: *** [CMakeFiles/Makefile2:348: CMakeFiles/g2.dir/all] Error 2
make: *** [Makefile:91: all] Error 2

Code:
export CC=gcc
export FC=gfortran
export CXX=g++
export FFLGAS=-fallow-argument-mismatch
export FCFLAGS=-fallow-argument-mismatch
export INSTALL_PREFIX=$HOME/WRF/Libs/nceplibs
export JPEG_LIBRARY=$DIR/grib2/lib
export JPEG_INCLUDE_DIR=$DIR/grib2/include
export JASPER_LIBRARIES=$DIR/grib2/lib
export JASPER_INCLUDE_DIR=$DIR/grib2/include
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX


I installed jpeg library like this

Code:
##############################Llibjpeg#########################
#Used for nceplibs only
cd $HOME/WRF/Downloads
export LDFLAGS=-L$DIR/grib2/lib
export CPPFLAGS=-I$DIR/grib2/include
tar -xvzf jpegsrc.v9.tar.gz
cd jpeg-9
./configure --prefix=$DIR/grib2
make 
make install
 
Whatheway said:
Sadly nceplibs-external is broken and no longer viable. :(

https://github.com/NOAA-EMC/NCEPLIBS-external/issues/101

You would need to clone the last release branch (release/public-v2) or tag (ufs-v2.0.0). I would not count on the develop branch working, since UFS applications have moved to HPC-stack for current releases, including UPP.
Just to note:
UPP v4.1 (last WRF supported version) was supported and tested with NCAR/NCEPLIBS (other versions not supported and may or may not work)
UPP v9.0.1 was supported and tested with NOAA-EMC/NCEPLIBS
UPP v10.1.0 is using HPC-stack
 
Top