[Met_help] Problems with compiling pb2nc . . . even with the patch
Joe Galewsky
galewsky at unm.edu
Wed Jul 9 09:00:47 MDT 2008
John:
Thanks for your quick reply! I just tried the compilation of the beta
version, and I am still getting the same error on pb2nc, posted below.
I am also attaching the Makefile I used. Someone posted the exact same
error message on the Portland Group web site, so I am not the only one
with this problem. Everything else compiled more-or-less smoothly up to
this point (a few warning messages).
Thanks for any assistance you can provide!
--Joe
pgCC -o pb2nc pb2nc.cc pb2nc_Conf.o numpbmsg.o openpb.o readpb.o dumppb.o \
-Bstatic -DMET_BASE=\"/users/galewsky/METv1.1beta9\" \
-I../../lib -I/users/galewsky/netcdf-3.6.2/include -I/users/galewsky/gsl
-I/users/galewsky/bufr -I/users/galewsky/libf2c \
-L../../lib -L/users/galewsky/netcdf-3.6.2/lib
-L/users/galewsky/gsl/libs -L/users/galewsky/bufr -L/users/galewsky/libf2c \
-lvx_met_util -lvx_analysis_util -lvx_wrfdata -lvx_met_util \
-lvx_contable -lvx_grib_classes \
-lvx_econfig -lvx_gsl_prob -lgsl \
-lvx_plot_util -lvx_render -lvx_pxm -lvx_color -lvx_ps -lvx_afm \
-lvx_data_grids -lvx_gnomon -lvx_nav -lvx_cal -lvx_util -lvx_math -lm \
-lnetcdf_c++ -lnetcdf \
-lbufr -lf2c -lpgftnrtl -lrt -lpthread
pb2nc.cc:
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 55:
error:
the global scope has no "isalnum"
using _STLP_VENDOR_CSTD::isalnum;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 56:
error:
the global scope has no "isalpha"
using _STLP_VENDOR_CSTD::isalpha;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 57:
error:
the global scope has no "iscntrl"
using _STLP_VENDOR_CSTD::iscntrl;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 58:
error:
the global scope has no "isdigit"
using _STLP_VENDOR_CSTD::isdigit;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 59:
error:
the global scope has no "isgraph"
using _STLP_VENDOR_CSTD::isgraph;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 60:
error:
the global scope has no "islower"
using _STLP_VENDOR_CSTD::islower;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 61:
error:
the global scope has no "isprint"
using _STLP_VENDOR_CSTD::isprint;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 62:
error:
the global scope has no "ispunct"
using _STLP_VENDOR_CSTD::ispunct;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 63:
error:
the global scope has no "isspace"
using _STLP_VENDOR_CSTD::isspace;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 64:
error:
the global scope has no "isupper"
using _STLP_VENDOR_CSTD::isupper;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 65:
error:
the global scope has no "isxdigit"
using _STLP_VENDOR_CSTD::isxdigit;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 66:
error:
the global scope has no "tolower"
using _STLP_VENDOR_CSTD::tolower;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/cctype", line 67:
error:
the global scope has no "toupper"
using _STLP_VENDOR_CSTD::toupper;
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
43: error:
identifier "_ISspace" is undefined
space = _Locale_SPACE,
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
44: error:
identifier "_ISprint" is undefined
print = _Locale_PRINT,
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
45: error:
identifier "_IScntrl" is undefined
cntrl = _Locale_CNTRL,
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
46: error:
identifier "_ISupper" is undefined
upper = _Locale_UPPER,
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
47: error:
identifier "_ISlower" is undefined
lower = _Locale_LOWER,
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
48: error:
identifier "_ISalpha" is undefined
alpha = _Locale_ALPHA,
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
49: error:
identifier "_ISdigit" is undefined
digit = _Locale_DIGIT,
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
50: error:
identifier "_ISpunct" is undefined
punct = _Locale_PUNCT,
^
"/users/system/pgi-7.0-2/linux86-64/7.0-2/include/CC/stl/_ctype.h", line
51: error:
identifier "_ISxdigit" is undefined
xdigit = _Locale_XDIGIT,
^
22 errors detected in the compilation of "pb2nc.cc".
make[3]: *** [pb2nc] Error 2
make[2]: *** [all] Error 2
make[1]: *** [targets] Error 2
make: *** [all] Error 2
John Halley Gotway wrote:
> Joe,
>
> We're actually getting ready to release the next version of MET -
> version 1.1 by the end of the week. We're basically just finalizing the
> updates to the User's Guide now. Why don't you try building a beta
> version of this next release and see if you're still having the same
> problems. We can keep our fingers crossed that the problem will have
> been resolved.
>
> You can access the beta version at:
> ftp://ftp.rap.ucar.edu/incoming/irap/johnhg/METv1.1beta9.20080702.tar.gz
>
> The User's Guide in there isn't updated yet for METv1.1.
>
> You'll first copy over Makefile_pgi to Makefile - and then configure
> that top-level Makefile with the paths to the library dependencies.
> Then do: make >& make_met.log
>
> Please let me know how it goes. If you run into problems with the
> build, please send back a copy of the Makefile you're using and a copy
> of the build log (make_met.log). That'll help diagnose the problems.
>
> Thanks,
> John Halley-Gotway
> johnhg at ucar.edu
>
> Joe Galewsky wrote:
>> Hi:
>>
>> I'm trying to compile METV1.0 on our Linux system with the Portland
>> Group compilers, version 7.0.2, and am getting fatal errors compiling
>> pb2nc. I made the changes indicated in your patched makefile, but
>> it's still barfing. The error messages are identical to those listed
>> here on the PG website:
>> http://www.pgroup.com/userforum/viewtopic.php?p=4531&sid=b0bbd1c7125df703be228aa3228f8546
>>
>>
>> Do you have any suggestions on how to successfully compile this code?
>> Can I provide you with further information? All of the other
>> libraries and dependencies have been successfully compiled.
>>
>> Thanks,
>>
>> Joe Galewsky
>>
>>
>
--
----------
Joseph Galewsky
Earth and Planetary Sciences
Northrop Hall Room 222
MSC 03 2040
1 University of New Mexico
Albuquerque, NM 87131-0001
phone: 505-277-2361
fax: 505-277-8843
email: galewsky at unm.edu
-------------- next part --------------
# *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
# ** Copyright UCAR (c) 1992 - 2005
# ** University Corporation for Atmospheric Research(UCAR)
# ** National Center for Atmospheric Research(NCAR)
# ** Research Applications Lab (RAL)
# ** P.O.Box 3000, Boulder, Colorado, 80307-3000, USA
# *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
###############################################################################
#
# Makefile for the Model Evaluation Tools Project
# for use with The Portland Group (PGI) Compilers
#
###############################################################################
###############################################################################
#
# Begin Variables to be modified before building
#
###############################################################################
# Path to GNU Make command
MAKE = /usr/bin/make
# Architecture flags
ARCH_FLAGS =
# Path to the C++ Compiler
# C++ compiler flags
# Any additional required libraries
CXX = pgCC
CXX_FLAGS = -Bstatic # -g
CXX_LIBS =
# Path to the Fortran Compiler
# Fortran compiler flags
# Any additional required libraries
FC = pgf77
FC_FLAGS = -Bstatic # -g
FC_LIBS = -lpgftnrtl -lrt -lpthread
# Make print options
PRINT_OPTS = --no-print-directory
# Top level directory for the NetCDF library
# NetCDF include directory specified as: -I/your/include/path
# NetCDF library directory specified as: -L/your/library/path
NETCDF_BASE = /users/galewsky/netcdf-3.6.2
NETCDF_INCS = -I$(NETCDF_BASE)/include
NETCDF_LIBS = -L$(NETCDF_BASE)/lib
# Top level directory for BUFRLIB
# BUFRLIB include directory specified as: -I/your/include/path
# BUFRLIB library directory specified as: -L/your/library/path
BUFR_BASE = /users/galewsky/bufr
BUFR_INCS = -I$(BUFR_BASE)
BUFR_LIBS = -L$(BUFR_BASE)
# Top level directory for the GNU Scientific Library (GSL) if it's not
# installed in a standard location.
# GSL include directory specified as: -I/your/include/path
# GSL library directory specified as: -L/your/library/path
GSL_BASE = /users/galewsky/gsl
GSL_INCS = -I$(GSL_BASE)
GSL_LIBS = -L$(GSL_BASE)/libs
# Top level directory for the F2C or G2C Library if it's not installed in a
# standard location.
# F2C include directory specified as: -I/your/include/path
# F2C library directory containing libf2c.a or libg2c.a and specified as:
# -L/your/library/path
# Name of the library to be used: -lf2c or -lg2c
F2C_BASE = /users/galewsky/libf2c
F2C_INCS = -I$(F2C_BASE)
F2C_LIBS = -L$(F2C_BASE)
F2C_LIBNAME = -lf2c
# Optional flags to disable the compilation of MET tools
# Specify a non-zero value to disable the compilation of the tool
DISABLE_PCP_COMBINE = 0
DISABLE_MODE = 0
DISABLE_GRID_STAT = 0
DISABLE_PB2NC = 0
DISABLE_ASCII2NC = 0
DISABLE_POINT_STAT = 0
DISABLE_VSDB_ANALYSIS = 0
DISABLE_MODE_ANALYSIS = 0
###############################################################################
#
# End Variables to be modified before building
#
###############################################################################
###############################################################################
#
# Export variables to be used by submakes
#
###############################################################################
export MAKE
export ARCH_FLAGS
export CXX
export CXX_FLAGS
export CXX_LIBS
export FC
export FC_FLAGS
export FC_LIBS
export MET_BASE
export NETCDF_INCS
export NETCDF_LIBS
export BUFR_INCS
export BUFR_LIBS
export GSL_INCS
export GSL_LIBS
export F2C_INCS
export F2C_LIBS
export F2C_LIBNAME
# Top level directory for the MET build
MET_BASE = ${PWD}
export MET_BASE
###############################################################################
#
# End export variables to be used by submakes
#
###############################################################################
FAKES = all clean libs targets
LIB_DIR = lib
INC_DIR = lib
SRC_DIR = src
OUT_DIR = out
VX_AFM = $(LIB_DIR)/vx_afm
VX_ANALYSIS_UTIL= $(LIB_DIR)/vx_analysis_util
VX_CAL = $(LIB_DIR)/vx_cal
VX_COLOR = $(LIB_DIR)/vx_color
VX_CONTABLE = $(LIB_DIR)/vx_contable
VX_DATA_GRIDS = $(LIB_DIR)/vx_data_grids
VX_ECONFIG = $(LIB_DIR)/vx_econfig
VX_GNOMON = $(LIB_DIR)/vx_gnomon
VX_GRIB_CLASSES = $(LIB_DIR)/vx_grib_classes
VX_GSL_PROB = $(LIB_DIR)/vx_gsl_prob
VX_MATH = $(LIB_DIR)/vx_math
VX_MET_UTIL = $(LIB_DIR)/vx_met_util
VX_NAV = $(LIB_DIR)/vx_nav
VX_PLOT_UTIL = $(LIB_DIR)/vx_plot_util
VX_PS = $(LIB_DIR)/vx_ps
VX_PXM = $(LIB_DIR)/vx_pxm
VX_RENDER = $(LIB_DIR)/vx_render
VX_UTIL = $(LIB_DIR)/vx_util
VX_WRFDATA = $(LIB_DIR)/vx_wrfdata
VX_WRFMODE = $(LIB_DIR)/vx_wrfmode
PCP_COMBINE = $(SRC_DIR)/pcp_combine
MODE = $(SRC_DIR)/mode
GRID_STAT = $(SRC_DIR)/grid_stat
PB2NC = $(SRC_DIR)/pb2nc
ASCII2NC = $(SRC_DIR)/ascii2nc
POINT_STAT = $(SRC_DIR)/point_stat
VSDB_ANALYSIS = $(SRC_DIR)/vsdb_analysis
MODE_ANALYSIS = $(SRC_DIR)/mode_analysis
all:
@ echo
@ echo "*** Making the Model Evaluation Tools Project ***"
@ echo
@ $(MAKE) libs $(PRINT_OPTS)
@ $(MAKE) targets $(PRINT_OPTS)
@ echo
@ echo "*** Finished Making the Model Evaluation Tools Project ***"
@ echo
libs:
@ cd $(VX_AFM); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_ANALYSIS_UTIL);$(MAKE) $(PRINT_OPTS)
@ cd $(VX_CAL); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_COLOR); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_CONTABLE); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_DATA_GRIDS); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_ECONFIG); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_GNOMON); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_GRIB_CLASSES); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_GSL_PROB); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_MATH); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_MET_UTIL); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_NAV); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_PLOT_UTIL); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_PS); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_PXM); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_RENDER); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_UTIL); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_WRFDATA); $(MAKE) $(PRINT_OPTS)
@ cd $(VX_WRFMODE); $(MAKE) $(PRINT_OPTS)
targets:
ifeq ($(DISABLE_PCP_COMBINE), 0)
@ cd $(PCP_COMBINE); $(MAKE) $(PRINT_OPTS)
endif
ifeq ($(DISABLE_MODE), 0)
@ cd $(MODE); $(MAKE) $(PRINT_OPTS)
endif
ifeq ($(DISABLE_GRID_STAT), 0)
@ cd $(GRID_STAT); $(MAKE) $(PRINT_OPTS)
endif
ifeq ($(DISABLE_PB2NC), 0)
@ cd $(PB2NC); $(MAKE) $(PRINT_OPTS)
endif
ifeq ($(DISABLE_ASCII2NC), 0)
@ cd $(ASCII2NC); $(MAKE) $(PRINT_OPTS)
endif
ifeq ($(DISABLE_POINT_STAT), 0)
@ cd $(POINT_STAT); $(MAKE) $(PRINT_OPTS)
endif
ifeq ($(DISABLE_VSDB_ANALYSIS), 0)
@ cd $(VSDB_ANALYSIS); $(MAKE) $(PRINT_OPTS)
endif
ifeq ($(DISABLE_MODE_ANALYSIS), 0)
@ cd $(MODE_ANALYSIS); $(MAKE) $(PRINT_OPTS)
endif
clean:
@ cd $(VX_AFM); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_ANALYSIS_UTIL);$(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_CAL); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_COLOR); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_CONTABLE); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_DATA_GRIDS); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_ECONFIG); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_GNOMON); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_GRIB_CLASSES); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_GSL_PROB); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_MATH); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_MET_UTIL); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_NAV); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_PLOT_UTIL); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_PS); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_PXM); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_RENDER); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_UTIL); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_WRFDATA); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VX_WRFMODE); $(MAKE) clean $(PRINT_OPTS)
@ cd $(PCP_COMBINE); $(MAKE) clean $(PRINT_OPTS)
@ cd $(MODE); $(MAKE) clean $(PRINT_OPTS)
@ cd $(GRID_STAT); $(MAKE) clean $(PRINT_OPTS)
@ cd $(PB2NC); $(MAKE) clean $(PRINT_OPTS)
@ cd $(ASCII2NC); $(MAKE) clean $(PRINT_OPTS)
@ cd $(POINT_STAT); $(MAKE) clean $(PRINT_OPTS)
@ cd $(VSDB_ANALYSIS); $(MAKE) clean $(PRINT_OPTS)
@ cd $(MODE_ANALYSIS); $(MAKE) clean $(PRINT_OPTS)
@ cd $(OUT_DIR); rm -f */*
rm -r -f *.a *.o junk temp core log c.ps a.out
.PHONY: $(FAKES)
More information about the Met_help
mailing list