WPS compile problems

All things involving the setup (compiling, NetCDF, etc.) of the WRF Model itself.

WPS compile problems

Postby snyderjm » Fri Feb 26, 2010 5:37 pm

To Whom it May Concern,

I tried to compile WPS but was unable to obtain geogrid.exe or metgrid.exe.
I have installed png, jasper, zlib and also set the path for the
geographic data obtained from the area where i download the WRF model
programs. I am not sure what is going on so I attached a sample from my compile.output
with some of the error messages. I am not sure what to make of these messages or
how to resolve this problem:

snyderjm/Desktop/WPS/../WRFV3/frame/module_machine.o \
/home/snyderjm/Desktop/WPS/../WRFV3/frame/module_internal_header_util.o \
-I/home/snyderjm/Desktop/WPS/../WRFV3/external/io_netcdf -I/home/snyderjm/Desktop/WPS/../WRFV3/external/io_grib_share -I/home/snyderjm/Desktop/WPS/../WRFV3/external/io_grib1 -I/home/snyderjm/Desktop/WPS/../WRFV3/external/io_int -I/home/snyderjm/Desktop/WPS/../WRFV3/inc \
-L/home/snyderjm/Desktop/WPS/../WRFV3/external/io_grib1 -lio_grib1 -L/home/snyderjm/Desktop/WPS/../WRFV3/external/io_grib_share -lio_grib_share -L/home/snyderjm/Desktop/WPS/../WRFV3/external/io_int -lwrfio_int -L/home/snyderjm/Desktop/WPS/../WRFV3/external/io_netcdf -lwrfio_nf -L/home/snyderjm/Desktop/WPS/netcdf_links/lib -lnetcdf \

/usr/bin/ld: cannot find -lwrfio_nf
collect2: ld returned 1 exit status
make[1]: [geogrid.exe] Error 1 (ignored)
make[1]: Leaving directory `/home/snyderjm/Desktop/WPS/geogrid/src'
( cd src/ngl ; make -i -r DEV_TOP="/home/snyderjm/Desktop/WPS" CC="gcc" FC="gfortran" RANLIB="ranlib" all )
make[1]: Entering directory `/home/snyderjm/Desktop/WPS/ungrib/src/ngl'
( cd w3 ; make -i -r DEV_TOP="/home/snyderjm/Desktop/WPS" all ; ranlib w3/libw3.a )
snyderjm
 
Posts: 15
Joined: Tue Nov 18, 2008 4:29 pm

Re: WPS compile problems

Postby dcvz » Fri Feb 26, 2010 7:44 pm

WPS cannot find the WRF I/O library.

WPS expects the WRFV3 directory to be located in the same directory as WPS. WPS, WRF, and netcdf must all be compiled with the same compiler.

In your case WRFV3 needs to be in in /home/snyderjm/Desktop/.

If it is there, then you must check that WRF compiled properly.

When WPS compiles for geogrid and metgrid fail, it almost always means a problem with the WRFV3 libraries or the netcdf library.
dcvz
 
Posts: 138
Joined: Tue Apr 15, 2008 12:02 am

Re: WPS compile problems

Postby snyderjm » Mon Mar 01, 2010 4:35 pm

How do I get the WRF i/o library? Where do I get this from?

Furthermore, I am having problems compiling WRFV3. I tried doing this for the em_quarter_ss file but to no avail since I do NOT have ideal.exe or wrf.exe files which I can run. I looked through the compile output file and have error messages which I do not know what to make of them for example at the beginning of the file I have:

make[3]: Entering directory `/home/snyderjm/Desktop/WRFV3/external/io_int'
cp ../../frame/module_internal_header_util.F module_internal_header_util.b
cp ../../inc/intio_tags.h intio_tags.h
/bin/rm -f module_internal_header_util.f
/lib/cpp -C -P -traditional -I../ioapi_share module_internal_header_util.b > module_internal_header_util.f
gfortran -w -ffree-form -ffree-line-length-none -fconvert=big-endian -frecord-marker=4 -I. -o module_internal_header_util.o -c module_internal_header_util.f
/bin/rm -f module_internal_header_util.b
/lib/cpp -C -P -traditional -I../ioapi_share io_int.F90 | m4 -Uinclude -Uindex -Ulen - > io_int.f
/bin/sh: m4: not found
make[3]: [io_int.o] Error 127 (ignored)
gfortran -w -ffree-form -ffree-line-length-none -fconvert=big-endian -frecord-marker=4 -I. -I../ioapi_share -o io_int.o -c io_int.f
/bin/rm -f intio_tags.h
/bin/rm -f libwrfio_int.a
ar cr libwrfio_int.a io_int.o
ranlib libwrfio_int.a
Diffwrf io_int will be built later on in this compile. No need to rerun compile.
Diffwrf io_int will be built later on in this compile. No need to rerun compile.
Diffwrf io_int will be built later on in this compile. No need to rerun compile.
Diffwrf io_int will be built later on in this compile. No need to rerun compile.
if [ -f ../../frame/pack_utils.o ] ; then \
mv diffwrf.F diffwrf.F90 ; \
x=`echo "gfortran -w -ffree-form -ffree-line-length-none -fconvert=big-endian -frecord-marker=4" | awk '{print $1}'` ; export x ; \
if [ $x = "gfortran" ] ; then \
echo removing external declaration of iargc for gfortran ; \
/lib/cpp -C -P -traditional -I../ioapi_share diffwrf.F90 | sed '/integer *, *external.*iargc/d' > diffwrf.f ; \
else \
/lib/cpp -C -P -traditional -I../ioapi_share diffwrf.F90 > diffwrf.f ; \
fi ; \
gfortran -w -ffree-form -ffree-line-length-none -fconvert=big-endian -frecord-marker=4 -c -I../ioapi_share diffwrf.f ; \
mv diffwrf.F90 diffwrf.F ; \
gfortran -w -ffree-form -ffree-line-length-none -fconvert=big-endian -frecord-marker=4 -o diffwrf diffwrf.o io_int.o \
../../frame/pack_utils.o ../../frame/module_internal_header_util.o \
../../frame/module_driver_constants.o \
../../frame/module_machine.o ../../frame/wrf_debug.o ../../frame/module_wrf_error.o \
; fi

In the middle of the file I have:

/bin/sh: m4: not found
make[3]: [wrf_io.o] Error 127 (ignored)
gfortran -O3 -ftree-vectorize -ftree-loop-linear -funroll-loops -w -ffree-form -ffree-line-length-none -fconvert=big-endian -frecord-marker=4 -o wrf_io.o -I/home/snyderjm/Desktop/WRFV3/netcdf_links/include -I../ioapi_share -c wrf_io.f
/lib/cpp -C -P -C -P -traditional -I../ioapi_share field_routines.F90 > field_routines.f
gfortran -O3 -ftree-vectorize -ftree-loop-linear -funroll-loops -w -ffree-form -ffree-line-length-none -fconvert=big-endian -frecord-marker=4 -o field_routines.o -I/home/snyderjm/Desktop/WRFV3/netcdf_links/include -I../ioapi_share -c field_routines.f
field_routines.f:41: Error: Can't open included file 'netcdf.inc'
field_routines.f:69: Error: Can't open included file 'netcdf.inc'
field_routines.f:97: Error: Can't open included file 'netcdf.inc'
field_routines.f:125: Error: Can't open included file 'netcdf.inc'
field_routines.f:37.14:

use wrf_data
1
Fatal Error: Can't open module file 'wrf_data.mod' for reading at (1): No such file or directory
make[3]: [field_routines.o] Error 1 (ignored)
/lib/cpp -C -P -C -P -traditional -I../ioapi_share module_wrfsi_static.F90 > module_wrfsi_static.f
gfortran -O3 -ftree-vectorize -ftree-loop-linear -funroll-loops -w -ffree-form -ffree-line-length-none -fconvert=big-endian -frecord-marker=4 -o module_wrfsi_static.o -I/home/snyderjm/Desktop/WRFV3/netcdf_links/include -I../ioapi_share -c module_wrfsi_static.f
module_wrfsi_static.f:9: Error: Can't open included file 'netcdf.inc'
module_wrfsi_static.f:56: Error: Can't open included file 'netcdf.inc'
module_wrfsi_static.f:77: Error: Can't open included file 'netcdf.inc'
module_wrfsi_static.f:88.28:

IF (status .NE. NF_NOERR) THEN
1
Error: Symbol 'nf_noerr' at (1) has no IMPLICIT type
module_wrfsi_static.f:20.30:

IF (status .NE. NF_NOERR) THEN
1
Error: Symbol 'nf_noerr' at (1) has no IMPLICIT type
module_wrfsi_static.f:19.50:

status = NF_OPEN(TRIM(staticfile),NF_NOWRITE,cdfid)
1
Error: Symbol 'nf_nowrite' at (1) has no IMPLICIT type
module_wrfsi_static.f:86.13:

status = NF_INQ_VARID(cdfid,varname,vid)
1
Error: Function 'nf_inq_varid' at (1) has no IMPLICIT type
module_wrfsi_static.f:87.13:

status = NF_GET_VAR_REAL(cdfid,vid,data)
1
Error: Function 'nf_get_var_real' at (1) has no IMPLICIT type
module_wrfsi_static.f:91.13:

status = NF_CLOSE(cdfid)
1
Error: Function 'nf_close' at (1) has no IMPLICIT type
module_wrfsi_static.f:64.13:

status = NF_INQ_DIMID(cdfid, 'x', vid)
1
Error: Function 'nf_inq_dimid' at (1) has no IMPLICIT type
module_wrfsi_static.f:65.13:

status = NF_INQ_DIMLEN(cdfid, vid, nx)
1
Error: Function 'nf_inq_dimlen' at (1) has no IMPLICIT type
module_wrfsi_static.f:66.13:

status = NF_INQ_DIMID(cdfid, 'y', vid)
1
Error: Function 'nf_inq_dimid' at (1) has no IMPLICIT type
module_wrfsi_static.f:67.13:

status = NF_INQ_DIMLEN(cdfid, vid, ny)
1
Error: Function 'nf_inq_dimlen' at (1) has no IMPLICIT type
module_wrfsi_static.f:70.13:

status = NF_CLOSE(cdfid)
1
Error: Function 'nf_close' at (1) has no IMPLICIT type
make[3]: [module_wrfsi_static.o] Error 1 (ignored)
/bin/rm -f libwrfio_nf.a
if [ "ar" != "lib.exe" ] ; then \
ar cr libwrfio_nf.a wrf_io.o field_routines.o module_wrfsi_static.o bitwise_operators.o ; \
else \
ar /out:libwrfio_nf.a wrf_io.o field_routines.o module_wrfsi_static.o bitwise_operators.o ; \
fi

I believe this has to due with my netcdf files being corrupt is that all or is there something else. Can you please help me decipher these error messages and help get me on the right track to running WRF properly so that I can get executable files that I can run (i.e. WRF.exe and Ideal.exe)?

Thanks,

Jason
snyderjm
 
Posts: 15
Joined: Tue Nov 18, 2008 4:29 pm

Re: WPS compile problems

Postby snyderjm » Mon Mar 01, 2010 4:40 pm

Also with the netcdf files I am having problems getting netcdf.include, which I think is contributing greatly to my WRF compilation problems. How do I install netcdf so that I get the include file that I need for running WRF?

I tried downloading the netcdf file (netcdf.tar.gz) from http://www.unidata.ucar.edu/software/netcdf/

then I uncompressed it and tarred it. Then I did ./compile and then make and then make test and finally sudo make install. I still have not gotten the include file this way and am baffled as to what I am doing wrong here. Can you help me out here?

I currently have the following files under my netcdf directory:

acinclude.m4 configure.ac libncdap3 missing nc_test4
aclocal.m4 COPYRIGHT libsrc nc-config netcdf.pc
compile cxx libsrc4 nc-config.in netcdf.pc.in
config.guess cxx4 libtool ncdap.m4 nf_test
config.h depcomp ltmain.sh ncdap_test README
config.h.in examples m4 ncdump RELEASE_NOTES
config.log f90 Makefile ncgen stamp-h1
config.status fortran Makefile.am ncgen4 VERSION
config.sub INSTALL Makefile.in nctest win32
configure install-sh man4 nc_test

Thanks,

Jason
snyderjm
 
Posts: 15
Joined: Tue Nov 18, 2008 4:29 pm

Re: WPS compile problems

Postby dcvz » Mon Mar 01, 2010 7:39 pm

In the compile output you want to find the first error message. Because once something starts to go wrong there are then just a bunch of cascading errors. The first error is this:

/bin/sh: m4: not found


m4 is a basic unix command usually located in /usr/bin. Since this is missing, this means your path is wrong or your unix installation is wrong. A missing m4 would also mess up your netcdf install.
dcvz
 
Posts: 138
Joined: Tue Apr 15, 2008 12:02 am


Return to Installation

Who is online

Users browsing this forum: Bing [Bot] and 1 guest