[Wrf-users] WRF Core NMM compiles

jcrosby jcrosby at scotiaweather.com
Mon Sep 22 10:29:01 MDT 2008


Sorry for the late reply,  something else came up that needed to be 
fixed and took awhile.

Recap:  Having an issue compiling the NMM version of WRF with nesting.  
Using gcc and gfortran.  Using openmpi.  Ran test cases for openmpi to 
verify its install.   But the problem still persists.

I will attach more configure.wrf and compile_nmm.log to this email, 
maybe someone will have an idea.

-- 
Joseph Crosby
Network Administrator
Scotia Weather Service Inc.
netadmin at scotiaweather.com
-----------
A byte walks into a bar and orders a pint. Bartender asks him "What's wrong?" Byte says "Parity error." Bartender nods and says "Yeah, I thought you looked a bit off."

-------------- next part --------------
# configure.wrf
#
# This file was automatically generated by the configure script in the
# top level directory. You may make changes to the settings in this
# file but be aware they will be overwritten each time you run configure.
# Ordinarily, it is necessary to run configure once, when the code is
# first installed.
#
# To permanently change options, change the settings for your platform
# in the file arch/configure.defaults then rerun configure.
#
SHELL           =       /bin/sh
DEVTOP          =       `pwd`
LIBINCLUDE      =       .
.SUFFIXES: .F .i .o .f90 .c

#### Get core settings from environment (set in compile script)
#### Note to add a core, this has to be added to.

COREDEFS = -DEM_CORE=$(WRF_EM_CORE) \
           -DNMM_CORE=$(WRF_NMM_CORE) -DNMM_MAX_DIM=2600 \
	   -DCOAMPS_CORE=$(WRF_COAMPS_CORE) \
	   -DDA_CORE=$(WRF_DA_CORE) \
           -DEXP_CORE=$(WRF_EXP_CORE)

#### Single location for defining total number of domains.  You need
#### at least 1 + 2*(number of total nests).  For example, 1 coarse
#### grid + three fine grids = 1 + 2(3) = 7, so MAX_DOMAINS=7.

MAX_DOMAINS	=	21

#### DM buffer length for the configuration flags.

CONFIG_BUF_LEN	=	32768


##############################################################################
#### The settings in this section are defaults that may be overridden by the 
#### architecture-specific settings in the next section.  
##############################################################################

##############################################################################
#### NOTE:  Do not modify these default values here.  To override these 
####        values, make changes after "Architecture specific settings".  
##############################################################################

#### Native size (in bytes) of Fortran REAL data type on this architecture ####
#### Note:  to change real wordsize (for example, to promote REALs from 
####        4-byte to 8-byte), modify the definition of RWORDSIZE in the 
####        section following "Architecture specific settings".  Do not 
####        change NATIVE_RWORDSIZE as is it architecture-specific.  
NATIVE_RWORDSIZE = 4

#### Default sed command and script for Fortran source files ####
#SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/standard.sed
SED_FTN = $(WRF_SRC_ROOT_DIR)/tools/standard.exe

# Hack to work around $(PWD) not changing during OSF1 build.  
# $(IO_GRIB_SHARE_DIR) is reset during the OSF1 build only.  
IO_GRIB_SHARE_DIR = 

#### ESMF switches                 ####
#### These are set up by Config.pl ####
# switch to use separately installed ESMF library for coupling:  1==true
ESMF_COUPLING       = 0
# select dependences on module_utility.o
ESMF_MOD_DEPENDENCE = $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/module_utility.o
# select -I options for separately installed ESMF library, if present
ESMF_MOD_INC        = 
# select -I options for external/io_esmf vs. external/esmf_time_f90
ESMF_IO_INC         = -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90
# select cpp token for external/io_esmf vs. external/esmf_time_f90
ESMF_IO_DEFS        = 
# select build target for external/io_esmf vs. external/esmf_time_f90
ESMF_TARGET         = esmf_time

##############################################################################

LIBWRFLIB = libwrflib.a


#### Architecture specific settings ####

# Notes: for moving nests, add -DMOVE_NESTS to ARCH_LOCAL
#        for vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCH_LOCAL

# Settings for Linux i486 i586 i686, gfortran compiler with gcc  (serial)
#
DMPARALLEL      =        1
OMPCPP          =       # -D_OPENMP
OMP             =       # -fopenmp
SFC             =       gfortran
SCC             =       gcc
DM_FC           =       mpif90 -f90=$(SFC)
DM_CC           =       mpicc -cc=$(SCC) -DMPI2_SUPPORT -DMPI2_THREAD_SUPPORT
FC              =        $(SFC)
CC              =       $(SCC) -DFSEEKO64_OK 
LD              =       $(FC)
RWORDSIZE       =       $(NATIVE_RWORDSIZE)
PROMOTION       =       # -fdefault-real-8  # uncomment manually
ARCH_LOCAL      =       -DNONSTANDARD_SYSTEM
CFLAGS_LOCAL    =       -w -O3 -c -DLANDREAD_STUB
LDFLAGS_LOCAL   =
FCOPTIM         =       -O3 -ftree-vectorize -ftree-loop-linear -funroll-loops
FCREDUCEDOPT	=       $(FCOPTIM)
FCNOOPT         =       -O0
FCDEBUG         =       # -g $(FCNOOPT)
FORMAT_FIXED    =       -ffixed-form
FORMAT_FREE     =       -ffree-form -ffree-line-length-none
FCSUFFIX        =       
BYTESWAPIO      =       -fconvert=little-endian -frecord-marker=4
FCBASEOPTS      =       -w $(FCDEBUG) $(FORMAT_FREE) $(BYTESWAPIO)
MODULE_SRCH_FLAG =
TRADFLAG        =      -traditional
CPP             =      /lib/cpp -C -P
AR              =      ar
ARFLAGS         =      ru
M4              =      m4 -B 14000
RANLIB          =      ranlib
CC_TOOLS        =      $(SCC)

###########################################################
######################

ARCHFLAGS       =    $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
                     $(ARCH_LOCAL) \
                     $(DA_ARCHFLAGS) \
                      -DDM_PARALLEL \
                      -DSTUBMPI \
                      -DNETCDF \
                       \
                      -DGRIB2 \
                       \
                      -DGRIB1 \
                      -DINTIO \
                      -DLIMIT_ARGS \
                      -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) \
                      -DMAX_DOMAINS_F=$(MAX_DOMAINS) \
		      -DNMM_NEST=$(WRF_NMM_NEST)
CFLAGS          =    $(CFLAGS_LOCAL) -DDM_PARALLEL -DSTUBMPI
FCFLAGS         =    $(FCOPTIM) $(FCBASEOPTS)
ESMF_LIB_FLAGS  =      
ESMF_IO_LIB     =    $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/libesmf_time.a
ESMF_IO_LIB_EXT =    -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/libesmf_time.a
INCLUDE_MODULES =    $(MODULE_SRCH_FLAG) \
                      -I$(WRF_SRC_ROOT_DIR)/main \
                      -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf \
                      -I$(WRF_SRC_ROOT_DIR)/external/io_int \
                      -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
                      -I$(WRF_SRC_ROOT_DIR)/frame \
                      -I$(WRF_SRC_ROOT_DIR)/share \
                      -I$(WRF_SRC_ROOT_DIR)/phys \
                      -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc \
		      -I/usr/local/openmpi/include
REGISTRY        =    Registry.NMM_NEST

LIB_BUNDLED     = \
                     -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
                     -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
                     -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
                     -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
                     -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
                     $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a \
                     $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o \
                     $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o 

LIB_EXTERNAL    = \
                     $(WRF_SRC_ROOT_DIR)/external/io_netcdf/libwrfio_nf.a -L/usr/local/netcdf/lib -lnetcdf -L$(WRF_SRC_ROOT_DIR)/external/io_grib2 -lio_grib2 -L/usr/lib -ljasper -L/usr/local/openmpi/lib -lmpi

LIB             =    $(LIB_BUNDLED) $(LIB_EXTERNAL) $(LIB_LOCAL)
LDFLAGS         =    $(OMP) $(FCFLAGS) $(LDFLAGS_LOCAL) 
ENVCOMPDEFS     =    
WRF_CHEM	=	0 
CPPFLAGS        =    $(ARCHFLAGS) $(ENVCOMPDEFS) -I$(LIBINCLUDE) $(TRADFLAG) 
NETCDFPATH      =    /usr/local/netcdf
PNETCDFPATH     =    

bundled:  wrf_ioapi_includes wrfio_grib_share wrfio_grib1 wrfio_int esmf_time fftpack
external:  wrfio_nf  wrfio_grib2 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a gen_comms_rsllite module_dm_rsllite

######################
externals: bundled external

gen_comms_serial :
	( /bin/rm -f $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c )

module_dm_serial :
	( if [ ! -e module_dm.F ] ; then /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F ; fi )

gen_comms_rsllite :
	( if [ ! -e $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ] ; then \
          /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; \
          cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c >> $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; fi )

module_dm_rsllite :
	( if [ ! -e module_dm.F ] ; then /bin/cp module_dm_warning module_dm.F ; \
          cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F >> module_dm.F ; fi )

wrfio_nf : 
	( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
          make NETCDFPATH=/usr/local/netcdf RANLIB="$(RANLIB)" CPP="$(CPP)" \
          FC="$(SFC) $(PROMOTION) $(FCFLAGS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )

wrfio_pnf : 
	( cd $(WRF_SRC_ROOT_DIR)/external/io_pnetcdf ; \
          make NETCDFPATH= RANLIB="$(RANLIB)" CPP="$(CPP)" \
          FC="$(FC) $(PROMOTION) $(FCFLAGS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )

wrfio_grib_share :
	( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
          make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
          FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" archive)

wrfio_grib1 :
	( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
          make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
          FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" archive)

wrfio_grib2 :
	( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
          make CC="$(SCC)" CFLAGS="$(CFLAGS) -I/usr/include" RM="$(RM)" RANLIB="$(RANLIB)" \
          CPP="$(CPP)" \
          FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS)" TRADFLAG="-traditional" AR="$(AR)" ARFLAGS="$(ARFLAGS)" \
          FIXED="$(FORMAT_FIXED)" archive)

wrfio_int : 
	( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
          make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
          FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" \
          TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" all )

esmf_time : 
	( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
          make FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" \
          CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(ARCHFLAGS) $(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )

fftpack :
	( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
          make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )

$(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a :
	( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; make CC="$(CC) $(CFLAGS)" \
          FC="$(FC) $(FCFLAGS) $(PROMOTION) $(BYTESWAPIO)" \
          CPP="$(CPP) -I. $(ARCHFLAGS) $(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" ;\
          $(RANLIB) $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a )

######################
#	Macros, these should be generic for all machines

LN	=	ln -sf
MAKE	=	make -i -r
RM	= 	rm -f


# These sub-directory builds are identical across all architectures

wrf_ioapi_includes :
	( cd $(WRF_SRC_ROOT_DIR)/external/ioapi_share ; \
          $(MAKE) NATIVE_RWORDSIZE="$(NATIVE_RWORDSIZE)" RWORDSIZE="$(RWORDSIZE)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )

wrfio_esmf :
	( cd $(WRF_SRC_ROOT_DIR)/external/io_esmf ; \
          make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) $(ESMF_MOD_INC)" \
          RANLIB="$(RANLIB)" CPP="$(CPP) $(POUND_DEF) " AR="$(AR)" ARFLAGS="$(ARFLAGS)" )

#	There is probably no reason to modify these rules

.F.i:
	$(RM) $@
	$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.F > $@
	mv $*.i $(DEVTOP)/pick/$*.f90
	cp $*.F $(DEVTOP)/pick

.F.o:
	$(RM) $@
	$(SED_FTN) $*.F > $*.b 
	$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b  > $*.f90
	$(RM) $*.b
	$(FC) -o $@ -c $(FCFLAGS) $(MODULE_DIRS) $(PROMOTION) $(FCSUFFIX) $*.f90

.F.f90:
	$(RM) $@
	$(SED_FTN) $*.F > $*.b 
	$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b  > $@
	$(RM) $*.b

.f90.o:
	$(RM) $@
	$(FC) -o $@ -c $(FCFLAGS) $(PROMOTION) $(FCSUFFIX) $*.f90

.c.o:
	$(RM) $@
	$(CC) -o $@ -c $(CFLAGS) $*.c

# A little more adventurous.  Allow full opt on 
# mediation_integrate.o \
# shift_domain_em.o \
# solve_em.o  <-- gets a little kick from SOLVE_EM_SPECIAL too, if defined
# mediation_feedback_domain.o : mediation_feedback_domain.F
# mediation_force_domain.o : mediation_force_domain.F
# mediation_interp_domain.o : mediation_interp_domain.F

# compile these without high optimization to speed compile
convert_nmm.o : convert_nmm.F
init_modules_em.o : init_modules_em.F
input_wrf.o : input_wrf.F
module_io.o : module_io.F
module_comm_dm.o : module_comm_dm.F
module_configure.o : module_configure.F
module_dm.o : module_dm.F
module_domain.o : module_domain.F
module_domain_type.o : module_domain_type.F
module_alloc_space.o : module_alloc_space.F
module_tiles.o : module_tiles.F
module_fddaobs_rtfdda.o : module_fddaobs_rtfdda.F
module_initialize.o : module_initialize.F
module_physics_init.o : module_physics_init.F 
module_initialize_b_wave.o : module_initialize_b_wave.F
module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
module_initialize_real.o : module_initialize_real.F
module_initialize_real.o: module_initialize_real.F
module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
module_integrate.o : module_integrate.F
module_io_mm5.o : module_io_mm5.F
module_io_wrf.o : module_io_wrf.F
module_si_io.o : module_si_io.F
module_state_description.o : module_state_description.F 
output_wrf.o : output_wrf.F
solve_interface.o : solve_interface.F
start_domain.o : start_domain.F
start_domain_nmm.o : start_domain_nmm.F
start_em.o : start_em.F
wrf_auxhist10in.o : wrf_auxhist10in.F
wrf_auxhist10out.o : wrf_auxhist10out.F
wrf_auxhist11in.o : wrf_auxhist11in.F
wrf_auxhist11out.o : wrf_auxhist11out.F
wrf_auxhist1in.o : wrf_auxhist1in.F
wrf_auxhist1out.o : wrf_auxhist1out.F
wrf_auxhist2in.o : wrf_auxhist2in.F
wrf_auxhist2out.o : wrf_auxhist2out.F
wrf_auxhist3in.o : wrf_auxhist3in.F
wrf_auxhist3out.o : wrf_auxhist3out.F
wrf_auxhist4in.o : wrf_auxhist4in.F
wrf_auxhist4out.o : wrf_auxhist4out.F
wrf_auxhist5in.o : wrf_auxhist5in.F
wrf_auxhist5out.o : wrf_auxhist5out.F
wrf_auxhist6in.o : wrf_auxhist6in.F
wrf_auxhist6out.o : wrf_auxhist6out.F
wrf_auxhist7in.o : wrf_auxhist7in.F
wrf_auxhist7out.o : wrf_auxhist7out.F
wrf_auxhist8in.o : wrf_auxhist8in.F
wrf_auxhist8out.o : wrf_auxhist8out.F
wrf_auxhist9in.o : wrf_auxhist9in.F
wrf_auxhist9out.o : wrf_auxhist9out.F
wrf_auxinput10in.o : wrf_auxinput10in.F
wrf_auxinput10out.o : wrf_auxinput10out.F
wrf_auxinput11in.o : wrf_auxinput11in.F
wrf_auxinput11out.o : wrf_auxinput11out.F
wrf_auxinput1in.o : wrf_auxinput1in.F
wrf_auxinput1out.o : wrf_auxinput1out.F
wrf_auxinput2in.o : wrf_auxinput2in.F
wrf_auxinput2out.o : wrf_auxinput2out.F
wrf_auxinput3in.o : wrf_auxinput3in.F
wrf_auxinput3out.o : wrf_auxinput3out.F
wrf_auxinput4in.o : wrf_auxinput4in.F
wrf_auxinput4out.o : wrf_auxinput4out.F
wrf_auxinput5in.o : wrf_auxinput5in.F
wrf_auxinput5out.o : wrf_auxinput5out.F
wrf_auxinput6in.o : wrf_auxinput6in.F
wrf_auxinput6out.o : wrf_auxinput6out.F
wrf_auxinput7in.o : wrf_auxinput7in.F
wrf_auxinput7out.o : wrf_auxinput7out.F
wrf_auxinput8in.o : wrf_auxinput8in.F
wrf_auxinput8out.o : wrf_auxinput8out.F
wrf_auxinput9in.o : wrf_auxinput9in.F
wrf_auxinput9out.o : wrf_auxinput9out.F
wrf_bdyin.o : wrf_bdyin.F
wrf_bdyout.o : wrf_bdyout.F
wrf_ext_read_field.o : wrf_ext_read_field.F
wrf_ext_write_field.o : wrf_ext_write_field.F
wrf_fddaobs_in.o : wrf_fddaobs_in.F
wrf_histin.o : wrf_histin.F
wrf_histout.o : wrf_histout.F
wrf_inputin.o : wrf_inputin.F
wrf_inputout.o : wrf_inputout.F
wrf_restartin.o : wrf_restartin.F
wrf_restartout.o : wrf_restartout.F
wrf_tsin.o : wrf_tsin.F
nl_get_0_routines.o : nl_get_0_routines.F
nl_get_1_routines.o : nl_get_1_routines.F
nl_set_0_routines.o : nl_set_0_routines.F
nl_set_1_routines.o : nl_set_1_routines.F

convert_nmm.o \
init_modules_em.o \
module_comm_dm.o \
module_dm.o \
module_alloc_space.o \
module_fddaobs_rtfdda.o \
module_initialize.o \
module_initialize_b_wave.o \
module_initialize_hill2d_x.o \
module_initialize_quarter_ss.o \
module_initialize_real.o \
module_initialize_squall2d_x.o \
module_initialize_squall2d_y.o \
module_integrate.o \
module_io_mm5.o \
module_io_wrf.o \
module_si_io.o \
module_tiles.o \
output_wrf.o \
solve_interface.o \
start_domain.o \
start_domain_nmm.o \
start_em.o \
wrf_fddaobs_in.o \
wrf_tsin.o :
	$(RM) $@
	$(SED_FTN) $*.F > $*.b 
	$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b  > $*.f90
	$(RM) $*.b
	$(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(OMP) $*.f90

#solve_em.o :
#	$(RM) $@
#	$(SED_FTN) $*.F > $*.b 
#	$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b  > $*.f90
#	$(RM) $*.b
#	$(FC) -o $@ -c $(FCFLAGS) $(MODULE_DIRS) $(PROMOTION) $(FCSUFFIX) $(SOLVE_EM_SPECIAL) $(OMP) $*.f90

module_sf_ruclsm.o : module_sf_ruclsm.F
	$(RM) $@
	$(SED_FTN) $*.F > $*.b 
	$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b  > $*.f90
	$(RM) $*.b
	$(FC) -c $(PROMOTION) $(FCREDUCEDOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(OMP) $*.f90

# compile without OMP
input_wrf.o \
module_domain.o \
module_domain_type.o \
module_physics_init.o \
module_io.o \
wrf_auxhist10in.o \
wrf_auxhist10out.o \
wrf_auxhist11in.o \
wrf_auxhist11out.o \
wrf_auxhist1in.o \
wrf_auxhist1out.o \
wrf_auxhist2in.o \
wrf_auxhist2out.o \
wrf_auxhist3in.o \
wrf_auxhist3out.o \
wrf_auxhist4in.o \
wrf_auxhist4out.o \
wrf_auxhist5in.o \
wrf_auxhist5out.o \
wrf_auxhist6in.o \
wrf_auxhist6out.o \
wrf_auxhist7in.o \
wrf_auxhist7out.o \
wrf_auxhist8in.o \
wrf_auxhist8out.o \
wrf_auxhist9in.o \
wrf_auxhist9out.o \
wrf_auxinput10in.o \
wrf_auxinput10out.o \
wrf_auxinput11in.o \
wrf_auxinput11out.o \
wrf_auxinput1in.o \
wrf_auxinput1out.o \
wrf_auxinput2in.o \
wrf_auxinput2out.o \
wrf_auxinput3in.o \
wrf_auxinput3out.o \
wrf_auxinput4in.o \
wrf_auxinput4out.o \
wrf_auxinput5in.o \
wrf_auxinput5out.o \
wrf_auxinput6in.o \
wrf_auxinput6out.o \
wrf_auxinput7in.o \
wrf_auxinput7out.o \
wrf_auxinput8in.o \
wrf_auxinput8out.o \
wrf_auxinput9in.o \
wrf_auxinput9out.o \
wrf_bdyin.o \
wrf_bdyout.o \
wrf_ext_read_field.o \
wrf_ext_write_field.o \
wrf_histin.o \
wrf_histout.o \
wrf_inputin.o \
wrf_inputout.o \
wrf_restartin.o \
wrf_restartout.o \
module_state_description.o \
nl_set_0_routines.o \
nl_set_1_routines.o \
nl_get_0_routines.o \
nl_get_1_routines.o \
module_configure.o :
	$(RM) $@
	$(SED_FTN) $*.F > $*.b 
	$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b  > $*.f90
	$(RM) $*.b
	$(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
-------------- next part --------------
 
**** Compiling: WRF_NMM_CORE .
 
make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" ext
make[1]: Entering directory `/testing/WRFV3'
--------------------------------------
( cd frame ; make -i -r externals )
make[2]: Entering directory `/testing/WRFV3/frame'
( cd /testing/WRFV3/external/ioapi_share ; \
          make -i -r NATIVE_RWORDSIZE="4" RWORDSIZE="4" AR="ar" ARFLAGS="ru" )
make[3]: Entering directory `/testing/WRFV3/external/ioapi_share'
( /bin/rm -f ../../inc/wrf_io_flags.h foo_io_flags.h; \
	/bin/cp wrf_io_flags.h foo_io_flags.h; \
	if [ 4 -ne 4 ] ; then \
	  /bin/rm -f foo_io_flags.h; \
	  sed -e 's/104/105/' wrf_io_flags.h > foo_io_flags.h ;\
	fi ; \
	/bin/mv foo_io_flags.h ../../inc/wrf_io_flags.h )
make[3]: Leaving directory `/testing/WRFV3/external/ioapi_share'
( cd /testing/WRFV3/external/io_grib_share ; \
          make CC="gcc" CFLAGS="-w -O3 -c -DLANDREAD_STUB -DDM_PARALLEL -DSTUBMPI" RM="rm -f" RANLIB="ranlib" CPP="/lib/cpp -C -P" \
          FC="gfortran  -I.  -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" TRADFLAG="-traditional" AR="ar" ARFLAGS="ru" archive)
make[3]: Entering directory `/testing/WRFV3/external/io_grib_share'
make[4]: Entering directory `/testing/WRFV3/external/io_grib_share'
ar ru ./libio_grib_share.a io_grib_share.o get_region_center.o gridnav.o open_file.o
make[4]: Leaving directory `/testing/WRFV3/external/io_grib_share'
make[3]: Leaving directory `/testing/WRFV3/external/io_grib_share'
( cd /testing/WRFV3/external/io_grib1 ; \
          make CC="gcc" CFLAGS="-w -O3 -c -DLANDREAD_STUB -DDM_PARALLEL -DSTUBMPI" RANLIB="ranlib" CPP="/lib/cpp -C -P" \
          FC="gfortran  -I.  -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" TRADFLAG="-traditional" AR="ar" ARFLAGS="ru" archive)
make[3]: Entering directory `/testing/WRFV3/external/io_grib1'
        Doing make archive on library subdirectory MEL_grib1
make[4]: Entering directory `/testing/WRFV3/external/io_grib1/MEL_grib1'
make[5]: Entering directory `/testing/WRFV3/external/io_grib1/MEL_grib1'
ar ru ../libio_grib1.a FTP_getfile.o apply_bitmap.o display_gribhdr.o gbyte.o grib_dec.o grib_enc.o grib_seek.o gribgetbds.o gribgetbms.o gribgetgds.o gribgetpds.o gribhdr2file.o gribputbds.o gribputgds.o gribputpds.o hdr_print.o init_dec_struct.o init_enc_struct.o init_gribhdr.o init_struct.o ld_dec_lookup.o ld_enc_input.o ld_enc_lookup.o ld_grib_origctrs.o make_default_grbfn.o make_grib_log.o map_lvl.o map_parm.o pack_spatial.o prt_inp_struct.o upd_child_errmsg.o prt_badmsg.o swap.o grib_uthin.o set_bytes.o
make[5]: Leaving directory `/testing/WRFV3/external/io_grib1/MEL_grib1'
make[4]: Leaving directory `/testing/WRFV3/external/io_grib1/MEL_grib1'
        Doing make archive on library subdirectory grib1_util
make[4]: Entering directory `/testing/WRFV3/external/io_grib1/grib1_util'
make[5]: Entering directory `/testing/WRFV3/external/io_grib1/grib1_util'
ar ru ../libio_grib1.a alloc_2d.o read_grib.o write_grib.o
make[5]: Leaving directory `/testing/WRFV3/external/io_grib1/grib1_util'
make[4]: Leaving directory `/testing/WRFV3/external/io_grib1/grib1_util'
        Doing make archive on library subdirectory WGRIB
make[4]: Entering directory `/testing/WRFV3/external/io_grib1/WGRIB'
make[4]: Nothing to be done for `archive'.
make[4]: Leaving directory `/testing/WRFV3/external/io_grib1/WGRIB'
make[4]: Entering directory `/testing/WRFV3/external/io_grib1'
ar ru ./libio_grib1.a grib1_routines.o gribmap.o io_grib1.o trim.o
make[4]: Leaving directory `/testing/WRFV3/external/io_grib1'
make[3]: Leaving directory `/testing/WRFV3/external/io_grib1'
( cd /testing/WRFV3/external/io_int ; \
          make CC="gcc -DFSEEKO64_OK " RANLIB="ranlib" CPP="/lib/cpp -C -P" \
          FC="gfortran   -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" \
          TRADFLAG="-traditional" AR="ar" ARFLAGS="ru" all )
make[3]: Entering directory `/testing/WRFV3/external/io_int'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/testing/WRFV3/external/io_int'
( cd /testing/WRFV3/external/esmf_time_f90 ; \
          make FC="gfortran   -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" RANLIB="ranlib" \
          CPP="/lib/cpp -C -P -I/testing/WRFV3/inc -I. -DEM_CORE=0 -DNMM_CORE=1 -DNMM_MAX_DIM=2600 -DCOAMPS_CORE=0 -DDA_CORE=0 -DEXP_CORE=0 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=4 -DLWORDSIZE=4 -DNONSTANDARD_SYSTEM  -DDM_PARALLEL -DSTUBMPI -DNETCDF -DGRIB2 -DGRIB1 -DINTIO -DLIMIT_ARGS -DCONFIG_BUF_LEN=32768 -DMAX_DOMAINS_F=21 -DNMM_NEST=1 -traditional" AR="ar" ARFLAGS="ru" )
make[3]: Entering directory `/testing/WRFV3/external/esmf_time_f90'
make[3]: Nothing to be done for `default'.
make[3]: Leaving directory `/testing/WRFV3/external/esmf_time_f90'
( cd /testing/WRFV3/external/fftpack/fftpack5 ; \
          make FC="gfortran" FFLAGS="  -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" RANLIB="ranlib" AR="ar" ARFLAGS="ru" )
make[3]: Entering directory `/testing/WRFV3/external/fftpack/fftpack5'
ar ru libfftpack.a c1f2kb.o c1f2kf.o c1f3kb.o c1f3kf.o c1f4kb.o c1f4kf.o c1f5kb.o c1f5kf.o c1fgkb.o c1fgkf.o c1fm1b.o c1fm1f.o cfft1b.o cfft1f.o cfft1i.o cfft2b.o cfft2f.o cfft2i.o cfftmb.o cfftmf.o cfftmi.o cmf2kb.o cmf2kf.o cmf3kb.o cmf3kf.o cmf4kb.o cmf4kf.o cmf5kb.o cmf5kf.o cmfgkb.o cmfgkf.o cmfm1b.o cmfm1f.o cosq1b.o cosq1f.o cosq1i.o cosqb1.o cosqf1.o cosqmb.o cosqmf.o cosqmi.o cost1b.o cost1f.o cost1i.o costb1.o costf1.o costmb.o costmf.o costmi.o factor.o mcfti1.o mcsqb1.o mcsqf1.o mcstb1.o mcstf1.o mradb2.o mradb3.o mradb4.o mradb5.o mradbg.o mradf2.o mradf3.o mradf4.o mradf5.o mradfg.o mrftb1.o mrftf1.o mrfti1.o msntb1.o msntf1.o r1f2kb.o r1f2kf.o r1f3kb.o r1f3kf.o r1f4kb.o r1f4kf.o r1f5kb.o r1f5kf.o r1fgkb.o r1fgkf.o rfft1b.o rfft1f.o rfft1i.o rfft2b.o rfft2f.o rfft2i.o rfftb1.o rfftf1.o rffti1.o rfftmb.o rfftmf.o rfftmi.o sinq1b.o sinq1f.o sinq1i.o sinqmb.o sinqmf.o sinqmi.o sint1b.o sint1f.o sint1i.o sintb1.o sintf1.o sintmb.o sintmf.o sintmi.o tables.o xercon.o xerfft.o
ranlib libfftpack.a
make[3]: Leaving directory `/testing/WRFV3/external/fftpack/fftpack5'
( cd /testing/WRFV3/external/io_netcdf ; \
          make NETCDFPATH=/usr/local/netcdf RANLIB="ranlib" CPP="/lib/cpp -C -P" \
          FC="gfortran  -O3 -ftree-vectorize -ftree-loop-linear -funroll-loops -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" TRADFLAG="-traditional" AR="ar" ARFLAGS="ru" )
make[3]: Entering directory `/testing/WRFV3/external/io_netcdf'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/testing/WRFV3/external/io_netcdf'
( cd /testing/WRFV3/external/io_grib2 ; \
          make CC="gcc" CFLAGS="-w -O3 -c -DLANDREAD_STUB -DDM_PARALLEL -DSTUBMPI -I/usr/include" RM="rm -f" RANLIB="ranlib" \
          CPP="/lib/cpp -C -P" \
          FC="gfortran  -I.  -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" TRADFLAG="-traditional" AR="ar" ARFLAGS="ru" \
          FIXED="-ffixed-form" archive)
make[3]: Entering directory `/testing/WRFV3/external/io_grib2'
        Doing make archive on library subdirectory bacio-1.3
make[4]: Entering directory `/testing/WRFV3/external/io_grib2/bacio-1.3'
make[5]: Entering directory `/testing/WRFV3/external/io_grib2/bacio-1.3'
ar ru ../libio_grib2.a bacio.v1.3.o baciof.o
make[5]: Leaving directory `/testing/WRFV3/external/io_grib2/bacio-1.3'
make[4]: Leaving directory `/testing/WRFV3/external/io_grib2/bacio-1.3'
        Doing make archive on library subdirectory g2lib
make[4]: Entering directory `/testing/WRFV3/external/io_grib2/g2lib'
make[5]: Entering directory `/testing/WRFV3/external/io_grib2/g2lib'
ar ru ../libio_grib2.a gridtemplates.o pdstemplates.o drstemplates.o gribmod.o realloc.o addfield.o addgrid.o addlocal.o getfield.o gb_info.o gf_getfld.o gf_free.o gf_unpack1.o gf_unpack2.o gf_unpack3.o gf_unpack4.o gf_unpack5.o gf_unpack6.o gf_unpack7.o gettemplates.o getlocal.o getdim.o getpoly.o gribcreate.o gribend.o gribinfo.o mkieee.o rdieee.o simpack.o simunpack.o cmplxpack.o compack.o misspack.o pack_gp.o reduce.o comunpack.o specpack.o specunpack.o jpcpack.o jpcunpack.o enc_jpeg2000.o dec_jpeg2000.o gbytesc.o skgb.o ixgb2.o getidx.o getg2i.o getg2ir.o getgb2s.o getgb2r.o getgb2l.o getgb2.o getgb2p.o getgb2rp.o putgb2.o g2grids.o gdt2gds.o mova2i.o params.o
make[5]: Leaving directory `/testing/WRFV3/external/io_grib2/g2lib'
make[4]: Leaving directory `/testing/WRFV3/external/io_grib2/g2lib'
make[4]: Entering directory `/testing/WRFV3/external/io_grib2'
ar ru ./libio_grib2.a grib2tbls_types.o io_grib2.o read_grib2map.o
make[4]: Leaving directory `/testing/WRFV3/external/io_grib2'
make[3]: Leaving directory `/testing/WRFV3/external/io_grib2'
( if [ ! -e /testing/WRFV3/tools/gen_comms.c ] ; then \
          /bin/cp /testing/WRFV3/tools/gen_comms_warning /testing/WRFV3/tools/gen_comms.c ; \
          cat /testing/WRFV3/external/RSL_LITE/gen_comms.c >> /testing/WRFV3/tools/gen_comms.c ; fi )
( if [ ! -e module_dm.F ] ; then /bin/cp module_dm_warning module_dm.F ; \
          cat /testing/WRFV3/external/RSL_LITE/module_dm.F >> module_dm.F ; fi )
make[2]: Leaving directory `/testing/WRFV3/frame'
make[1]: Leaving directory `/testing/WRFV3'
make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" toolsdir
make[1]: Entering directory `/testing/WRFV3'
--------------------------------------
( cd tools ; make -i -r CC_TOOLS="gcc" )
make[2]: Entering directory `/testing/WRFV3/tools'
make[2]: `registry' is up to date.
make[2]: Leaving directory `/testing/WRFV3/tools'
make[1]: Leaving directory `/testing/WRFV3'
/bin/rm -f main/libwrflib.a main/libwrflib.lib
make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" framework
make[1]: Entering directory `/testing/WRFV3'
--------------------------------------
( cd frame ; make -i -r framework; \
	cd ../external/io_netcdf ; make NETCDFPATH="/usr/local/netcdf" FC="gfortran -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" RANLIB="ranlib" CPP="/lib/cpp -C -P" LDFLAGS=" -O3 -ftree-vectorize -ftree-loop-linear -funroll-loops -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4  " ESMF_IO_LIB_EXT="-L/testing/WRFV3/external/esmf_time_f90/libesmf_time.a" ESMF_MOD_DEPENDENCE="/testing/WRFV3/external/esmf_time_f90/module_utility.o" diffwrf; \
	cd ../io_int ; make -i -r SFC="gfortran -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" FC="gfortran -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4" RANLIB="ranlib" CPP="/lib/cpp -C -P" ESMF_IO_LIB_EXT="-L/testing/WRFV3/external/esmf_time_f90/libesmf_time.a" ESMF_MOD_DEPENDENCE="/testing/WRFV3/external/esmf_time_f90/module_utility.o" diffwrf ; cd ../../frame )
make[2]: Entering directory `/testing/WRFV3/frame'
ar ru ../main/libwrflib.a module_driver_constants.o module_domain_type.o module_alloc_space.o module_domain.o module_integrate.o module_timing.o module_configure.o module_tiles.o module_machine.o module_nesting.o module_wrf_error.o module_state_description.o module_sm.o module_io.o module_comm_dm.o module_dm.o module_quilt_outbuf_ops.o module_io_quilt.o wrf_num_bytes_between.o wrf_shutdown.o wrf_debug.o libmassv.o nl_get_0_routines.o nl_get_1_routines.o nl_set_0_routines.o nl_set_1_routines.o collect_on_comm.o
ar: creating ../main/libwrflib.a
ranlib ../main/libwrflib.a
make[2]: Leaving directory `/testing/WRFV3/frame'
make[2]: Entering directory `/testing/WRFV3/external/io_netcdf'
make[2]: `diffwrf' is up to date.
make[2]: Leaving directory `/testing/WRFV3/external/io_netcdf'
make[2]: Entering directory `/testing/WRFV3/external/io_int'
make[2]: `diffwrf' is up to date.
make[2]: Leaving directory `/testing/WRFV3/external/io_int'
make[1]: Leaving directory `/testing/WRFV3'
make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" shared
make[1]: Entering directory `/testing/WRFV3'
--------------------------------------
( cd share ; make -i -r )
make[2]: Entering directory `/testing/WRFV3/share'
if [ 1 -eq 1 ] ; then \
                  make -i -r nmm_contrib                                      ; \
                  ar ru ../main/libwrflib.a module_bc.o module_bc_time_utilities.o module_io_wrf.o module_date_time.o module_get_file_names.o module_io_domain.o module_model_constants.o module_MPP.o module_optional_input.o module_compute_geop.o module_soil_pre.o module_llxy.o dfi.o mediation_integrate.o mediation_interp_domain.o mediation_force_domain.o mediation_feedback_domain.o mediation_nest_move.o mediation_wrfmain.o solve_interface.o start_domain.o init_modules.o set_timekeeping.o interp_fcn.o sint.o input_wrf.o output_wrf.o wrf_timeseries.o wrf_ext_write_field.o wrf_ext_read_field.o wrf_inputout.o wrf_auxinput1out.o wrf_auxinput2out.o wrf_auxinput3out.o wrf_auxinput4out.o wrf_auxinput5out.o wrf_auxinput6out.o wrf_auxinput7out.o wrf_auxinput8out.o wrf_auxinput9out.o wrf_auxinput10out.o wrf_auxinput11out.o wrf_histout.o wrf_auxhist1out.o wrf_auxhist2out.o wrf_auxhist3out.o wrf_auxhist4out.o wrf_auxhist5out.o wrf_auxhist6out.o wrf_auxhist7out.o wrf_auxhist8out.o wrf_auxhist9out.o wrf_auxhist10out.o wrf_auxhist11out.o wrf_restartout.o wrf_bdyout.o wrf_inputin.o wrf_auxhist1in.o wrf_auxhist2in.o wrf_auxhist3in.o wrf_auxhist4in.o wrf_auxhist5in.o wrf_auxhist6in.o wrf_auxhist7in.o wrf_auxhist8in.o wrf_auxhist9in.o wrf_auxhist10in.o wrf_auxhist11in.o wrf_auxinput1in.o wrf_auxinput2in.o wrf_auxinput3in.o wrf_auxinput4in.o wrf_auxinput5in.o wrf_auxinput6in.o wrf_auxinput7in.o wrf_auxinput8in.o wrf_auxinput9in.o wrf_auxinput10in.o wrf_auxinput11in.o wrf_fddaobs_in.o wrf_bdyin.o wrf_histin.o wrf_restartin.o wrf_tsin.o landread.o   ; \
                  else                                                         \
                  ar ru ../main/libwrflib.a module_bc.o module_bc_time_utilities.o module_io_wrf.o module_date_time.o module_get_file_names.o module_io_domain.o module_model_constants.o module_MPP.o module_optional_input.o module_compute_geop.o module_soil_pre.o module_llxy.o dfi.o mediation_integrate.o mediation_interp_domain.o mediation_force_domain.o mediation_feedback_domain.o mediation_nest_move.o mediation_wrfmain.o solve_interface.o start_domain.o init_modules.o set_timekeeping.o interp_fcn.o sint.o input_wrf.o output_wrf.o wrf_timeseries.o wrf_ext_write_field.o wrf_ext_read_field.o wrf_inputout.o wrf_auxinput1out.o wrf_auxinput2out.o wrf_auxinput3out.o wrf_auxinput4out.o wrf_auxinput5out.o wrf_auxinput6out.o wrf_auxinput7out.o wrf_auxinput8out.o wrf_auxinput9out.o wrf_auxinput10out.o wrf_auxinput11out.o wrf_histout.o wrf_auxhist1out.o wrf_auxhist2out.o wrf_auxhist3out.o wrf_auxhist4out.o wrf_auxhist5out.o wrf_auxhist6out.o wrf_auxhist7out.o wrf_auxhist8out.o wrf_auxhist9out.o wrf_auxhist10out.o wrf_auxhist11out.o wrf_restartout.o wrf_bdyout.o wrf_inputin.o wrf_auxhist1in.o wrf_auxhist2in.o wrf_auxhist3in.o wrf_auxhist4in.o wrf_auxhist5in.o wrf_auxhist6in.o wrf_auxhist7in.o wrf_auxhist8in.o wrf_auxhist9in.o wrf_auxhist10in.o wrf_auxhist11in.o wrf_auxinput1in.o wrf_auxinput2in.o wrf_auxinput3in.o wrf_auxinput4in.o wrf_auxinput5in.o wrf_auxinput6in.o wrf_auxinput7in.o wrf_auxinput8in.o wrf_auxinput9in.o wrf_auxinput10in.o wrf_auxinput11in.o wrf_fddaobs_in.o wrf_bdyin.o wrf_histin.o wrf_restartin.o wrf_tsin.o landread.o             ; \
                fi
make[3]: Entering directory `/testing/WRFV3/share'
make[3]: Nothing to be done for `nmm_contrib'.
make[3]: Leaving directory `/testing/WRFV3/share'
make[2]: Leaving directory `/testing/WRFV3/share'
make[1]: Leaving directory `/testing/WRFV3'
make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" physics
make[1]: Entering directory `/testing/WRFV3'
--------------------------------------
( cd phys ; make -i -r )
make[2]: Entering directory `/testing/WRFV3/phys'
if [ 1 -eq 1 ] ; then \
                  make -i -r nmm_contrib                                      ; \
                  ar ru ../main/libwrflib.a module_bl_ysu.o module_bl_mrf.o module_bl_gfs.o module_bl_myjpbl.o module_bl_acm.o module_cu_g3.o module_cu_kf.o module_cu_bmj.o module_cu_kfeta.o module_cu_gd.o module_cu_sas.o module_mp_kessler.o module_mp_lin.o module_mp_wsm3.o module_mp_wsm5.o module_mp_wsm6.o module_mp_etanew.o module_mp_thompson.o module_mp_gsfcgce.o module_mp_morr_two_moment.o module_ra_sw.o module_ra_gsfcsw.o module_ra_rrtm.o module_ra_cam_support.o module_ra_cam.o module_ra_gfdleta.o module_ra_hs.o module_sf_sfclay.o module_sf_gfs.o module_sf_slab.o module_sf_noahdrv.o module_sf_noahlsm.o module_sf_urban.o module_sf_lsm_nmm.o module_sf_pxlsm.o module_sf_ruclsm.o module_sf_sfcdiags.o module_sf_myjsfc.o module_sf_pxsfclay.o module_physics_addtendc.o module_physics_init.o module_gfs_machine.o module_gfs_funcphys.o module_gfs_physcons.o module_progtm.o module_pbl_driver.o module_data_gocart_dust.o module_cumulus_driver.o module_microphysics_driver.o module_microphysics_zero_out.o module_mixactivate.o module_radiation_driver.o module_surface_driver.o module_diagnostics.o module_fdda_psufddagd.o module_fddagd_driver.o module_fddaobs_rtfdda.o module_fddaobs_driver.o    ; \
                else                                                         \
                  make -i -r non_nmm                                          ; \
                  ar ru ../main/libwrflib.a module_bl_ysu.o module_bl_mrf.o module_bl_gfs.o module_bl_myjpbl.o module_bl_acm.o module_cu_g3.o module_cu_kf.o module_cu_bmj.o module_cu_kfeta.o module_cu_gd.o module_cu_sas.o module_mp_kessler.o module_mp_lin.o module_mp_wsm3.o module_mp_wsm5.o module_mp_wsm6.o module_mp_etanew.o module_mp_thompson.o module_mp_gsfcgce.o module_mp_morr_two_moment.o module_ra_sw.o module_ra_gsfcsw.o module_ra_rrtm.o module_ra_cam_support.o module_ra_cam.o module_ra_gfdleta.o module_ra_hs.o module_sf_sfclay.o module_sf_gfs.o module_sf_slab.o module_sf_noahdrv.o module_sf_noahlsm.o module_sf_urban.o module_sf_lsm_nmm.o module_sf_pxlsm.o module_sf_ruclsm.o module_sf_sfcdiags.o module_sf_myjsfc.o module_sf_pxsfclay.o module_physics_addtendc.o module_physics_init.o module_gfs_machine.o module_gfs_funcphys.o module_gfs_physcons.o module_progtm.o module_pbl_driver.o module_data_gocart_dust.o module_cumulus_driver.o module_microphysics_driver.o module_microphysics_zero_out.o module_mixactivate.o module_radiation_driver.o module_surface_driver.o module_diagnostics.o module_fdda_psufddagd.o module_fddagd_driver.o module_fddaobs_rtfdda.o module_fddaobs_driver.o              ; \
                fi
make[3]: Entering directory `/testing/WRFV3/phys'
make[3]: Nothing to be done for `nmm_contrib'.
make[3]: Leaving directory `/testing/WRFV3/phys'
make[2]: Leaving directory `/testing/WRFV3/phys'
make[1]: Leaving directory `/testing/WRFV3'
if [ 0  -eq 1 ]    ; then make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" chemics ; fi
if [ 0 -eq 1 ]    ; then make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" em_core ; fi
if [ 1 -eq 1 ]   ; then make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" nmm_core ; fi
make[1]: Entering directory `/testing/WRFV3'
--------------------------------------
( cd dyn_nmm ; make -i -r )
make[2]: Entering directory `/testing/WRFV3/dyn_nmm'
ar ru ../main/libwrflib.a module_ADVECTION.o module_BC_NMM.o module_BNDRY_COND.o module_NEST_UTIL.o module_CTLBLK.o module_DIFFUSION_NMM.o module_IGWAVE_ADJUST.o module_NONHY_DYNAM.o module_PHYSICS_CALLS.o module_MPPINIT.o module_TIMERS.o module_si_io_nmm.o module_initialize_real.o module_PRECIP_ADJUST.o  init_modules_nmm.o start_domain_nmm.o solve_nmm.o RDTEMP.o BUCKETS.o DSTRB.o CLTEND.o NMM_NEST_UTILS1.o
make[2]: Leaving directory `/testing/WRFV3/dyn_nmm'
make[1]: Leaving directory `/testing/WRFV3'
if [ 0 -eq 1 ]   ; then make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" exp_core ; fi
( cd main ; make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" SOLVER=em em_wrf )
make[1]: Entering directory `/testing/WRFV3/main'
ranlib libwrflib.a
gfortran -o wrf.exe  -O3 -ftree-vectorize -ftree-loop-linear -funroll-loops -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4   wrf.o ../main/module_wrf_top.o libwrflib.a -L/testing/WRFV3/external/fftpack/fftpack5 -lfftpack -L/testing/WRFV3/external/io_grib1 -lio_grib1 -L/testing/WRFV3/external/io_grib_share -lio_grib_share -L/testing/WRFV3/external/io_int -lwrfio_int -L/testing/WRFV3/external/esmf_time_f90 -lesmf_time /testing/WRFV3/external/RSL_LITE/librsl_lite.a /testing/WRFV3/frame/module_internal_header_util.o /testing/WRFV3/frame/pack_utils.o  /testing/WRFV3/external/io_netcdf/libwrfio_nf.a -L/usr/local/netcdf/lib -lnetcdf -L/testing/WRFV3/external/io_grib2 -lio_grib2 -L/usr/lib -ljasper -L/usr/local/openmpi/lib -lmpi 
libwrflib.a(solve_nmm.o): In function `field_stats_':
solve_nmm.f90:(.text+0x782): undefined reference to `mpi_reduce_'
solve_nmm.f90:(.text+0x7ca): undefined reference to `mpi_reduce_'
solve_nmm.f90:(.text+0x812): undefined reference to `mpi_reduce_'
solve_nmm.f90:(.text+0x85a): undefined reference to `mpi_reduce_'
libwrflib.a(solve_nmm.o): In function `time_stats_':
solve_nmm.f90:(.text+0x126f): undefined reference to `mpi_recv_'
solve_nmm.f90:(.text+0x17a5): undefined reference to `mpi_barrier_'
solve_nmm.f90:(.text+0x1b68): undefined reference to `mpi_send_'
libwrflib.a(solve_nmm.o): In function `vwr_':
solve_nmm.f90:(.text+0x397b): undefined reference to `mpi_recv_'
solve_nmm.f90:(.text+0x39b3): undefined reference to `mpi_recv_'
solve_nmm.f90:(.text+0x3a7f): undefined reference to `mpi_recv_'
solve_nmm.f90:(.text+0x3ca3): undefined reference to `mpi_barrier_'
solve_nmm.f90:(.text+0x41c7): undefined reference to `mpi_send_'
solve_nmm.f90:(.text+0x4205): undefined reference to `mpi_send_'
solve_nmm.f90:(.text+0x4245): undefined reference to `mpi_send_'
libwrflib.a(solve_nmm.o): In function `twr_':
solve_nmm.f90:(.text+0x4cfb): undefined reference to `mpi_recv_'
solve_nmm.f90:(.text+0x4d33): undefined reference to `mpi_recv_'
solve_nmm.f90:(.text+0x4dff): undefined reference to `mpi_recv_'
solve_nmm.f90:(.text+0x5023): undefined reference to `mpi_barrier_'
solve_nmm.f90:(.text+0x5531): undefined reference to `mpi_send_'
solve_nmm.f90:(.text+0x5575): undefined reference to `mpi_send_'
solve_nmm.f90:(.text+0x55b5): undefined reference to `mpi_send_'
libwrflib.a(module_ADVECTION.o): In function `__module_advection__had2':
module_ADVECTION.f90:(.text+0x1172d): undefined reference to `mpi_allreduce_'
libwrflib.a(module_ADVECTION.o): In function `__module_advection__had2_scal':
module_ADVECTION.f90:(.text+0x1707f): undefined reference to `mpi_allreduce_'
libwrflib.a(DSTRB.o): In function `dstrb_':
DSTRB.f90:(.text+0x37a): undefined reference to `mpi_recv_'
DSTRB.f90:(.text+0x695): undefined reference to `mpi_send_'
DSTRB.f90:(.text+0x6d2): undefined reference to `mpi_barrier_'
DSTRB.f90:(.text+0xd8f): undefined reference to `mpi_send_'
DSTRB.f90:(.text+0xe30): undefined reference to `mpi_recv_'
collect2: ld returned 1 exit status
make[1]: [em_wrf] Error 1 (ignored)
make[1]: Leaving directory `/testing/WRFV3/main'
( cd run ; /bin/rm -f wrf.exe ; ln -s ../main/wrf.exe . )
if [ 0 -eq 1 ] ; then \
	  ( cd main ; make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" SOLVER=em em_wrf_SST_ESMF ) ; \
	fi
--------------------------------------
( cd main ; make -i -r MODULE_DIRS="-I../dyn_em -I../dyn_nmm   -I/testing/WRFV3/main -I/testing/WRFV3/external/io_netcdf -I/testing/WRFV3/external/io_int -I/testing/WRFV3/external/esmf_time_f90 -I/testing/WRFV3/frame -I/testing/WRFV3/share -I/testing/WRFV3/phys -I/testing/WRFV3/chem -I/testing/WRFV3/inc -I/usr/local/openmpi/include" SOLVER=nmm IDEAL_CASE=real real_nmm )
make[1]: Entering directory `/testing/WRFV3/main'
( cd ../dyn_nmm ;  make -i -r module_initialize_real.o )
make[2]: Entering directory `/testing/WRFV3/dyn_nmm'
make[2]: `module_initialize_real.o' is up to date.
make[2]: Leaving directory `/testing/WRFV3/dyn_nmm'
ranlib libwrflib.a
gfortran -o real_nmm.exe  -O3 -ftree-vectorize -ftree-loop-linear -funroll-loops -w  -ffree-form -ffree-line-length-none -fconvert=little-endian -frecord-marker=4   real_nmm.o ../dyn_nmm/module_initialize_real.o ../share/module_optional_input.o ../share/input_wrf.o ../share/module_io_domain.o libwrflib.a -L/testing/WRFV3/external/fftpack/fftpack5 -lfftpack -L/testing/WRFV3/external/io_grib1 -lio_grib1 -L/testing/WRFV3/external/io_grib_share -lio_grib_share -L/testing/WRFV3/external/io_int -lwrfio_int -L/testing/WRFV3/external/esmf_time_f90 -lesmf_time /testing/WRFV3/external/RSL_LITE/librsl_lite.a /testing/WRFV3/frame/module_internal_header_util.o /testing/WRFV3/frame/pack_utils.o  /testing/WRFV3/external/io_netcdf/libwrfio_nf.a -L/usr/local/netcdf/lib -lnetcdf -L/testing/WRFV3/external/io_grib2 -lio_grib2 -L/usr/lib -ljasper -L/usr/local/openmpi/lib -lmpi 
make[1]: Leaving directory `/testing/WRFV3/main'
( cd test/nmm_real ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
( cd test/nmm_real ; /bin/rm -f real_nmm.exe ; ln -s ../../main/real_nmm.exe . )
( cd test/nmm_real ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
( cd test/nmm_real ; /bin/rm -f ETAMPNEW_DATA RRTM_DATA ;    \
	     ln -sf ../../run/ETAMPNEW_DATA . ;                     \
	     ln -sf ../../run/RRTM_DATA . ;                         \
	     if [ 4 -eq 8 ] ; then                       \
	        ln -sf ../../run/ETAMPNEW_DATA_DBL ETAMPNEW_DATA ;  \
	        ln -sf ../../run/RRTM_DATA_DBL RRTM_DATA ;          \
	     fi )
( cd test/nmm_real ; /bin/rm -f GENPARM.TBL ; ln -s ../../run/GENPARM.TBL . )
( cd test/nmm_real ; /bin/rm -f LANDUSE.TBL ; ln -s ../../run/LANDUSE.TBL . )
( cd test/nmm_real ; /bin/rm -f SOILPARM.TBL ; ln -s ../../run/SOILPARM.TBL . )
( cd test/nmm_real ; /bin/rm -f VEGPARM.TBL ; ln -s ../../run/VEGPARM.TBL . )
( cd test/nmm_real ; /bin/rm -f tr49t67 ; ln -s ../../run/tr49t67 . )
( cd test/nmm_real ; /bin/rm -f tr49t85 ; ln -s ../../run/tr49t85 . )
( cd test/nmm_real ; /bin/rm -f tr67t85 ; ln -s ../../run/tr67t85 . )
( cd test/nmm_real ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
( cd test/nmm_real ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
( cd run ; /bin/rm -f real_nmm.exe ; ln -s ../main/real_nmm.exe . )
( cd run ; if test -f namelist.input ; then \
		/bin/cp -f namelist.input namelist.input.backup ; fi ; \
		/bin/rm -f namelist.input ; ln -s ../test/nmm_real/namelist.input . )


More information about the Wrf-users mailing list