This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Hal, > To: address@hidden > cc: address@hidden > From: Hal Batchelder <address@hidden> > Subject: problems installing netCDFPerl-1.2 > Organization: University of California, Berkeley > Keywords: 200002181825.LAA07878 In the above message, you wrote: > I have been unsuccessful in getting netCDFPerl 1.2 to install and test > properly on my Linux system with RedHat 5.2. Below please find output > from: > > pwd --> shows directory with netCDFPerl src > uname -a --> provides system info > which perl --> provides location of installed perl > perl -version --> provides info on installed perl > setenv --> shows relevant environment variables > ./configure --> output of configure script (seems OK) > make --> first indication of difficulties ?? > [ok, even though there were problems, I tried the next command] > make test --> see results below > > Any suggestions on how to get this working. I'm only a beginner with > perl. Have been using the netCDF 3.4 with Fortran code to read netCDF > files, but would like to be able to prototype netCDF data access using > perl. > > TIA, > Hal Batchelder > address@hidden > > ===================================================== > > [hbatch@localhost]# pwd > /home/squid/hbatch/ncdperl/netcdf-perl-1.2/src > > [hbatch@localhost]# uname -a > Linux squid 2.0.36 #1 Tue Oct 13 22:17:11 EDT 1998 i686 unknown > > [hbatch@localhost]# which perl > /usr/local/bin/perl > > [hbatch@localhost]# perl -version > > This is perl, version 5.005_03 built for i686-linux > > Copyright 1987-1999, Larry Wall > > Perl may be copied only under the terms of either the Artistic License or the > GNU General Public License, which may be found in the Perl 5.0 source kit. > > Complete documentation for Perl, including FAQ lists, should be found on > this system using `man perl' or `perldoc perl'. If you have access to the > Internet, point your browser at http://www.perl.com/, the Perl Home Page. > > > [hbatch@localhost]# setenv > PERL_MANDIR=/usr/local/man > CPP_NETCDF=-I/usr/local/netcdf-3.4/include > LD_NETCDF=-L/usr/local/netcdf-3.4/lib -lnetcdf > > [in here I ran 'make distclean' and 'rm config.cache'] > > [hbatch@localhost]# ./configure > creating cache ./config.cache > checking for catman... no > checking for perl... perl > checking for perl manual page directory... /usr/local/man > checking for neqn... neqn > checking for tbl... tbl > checking for c89... no > checking for cc... cc > checking type of operating system... linux > checking for tar flags... -chof > checking for netCDF header-file... -I/usr/local/netcdf-3.4/include > checking for netCDF library... -L/usr/local/netcdf-3.4/lib -lnetcdf > checking for package version... 1.2 > updating cache ./config.cache > creating ./config.status > creating Makefile > creating perl/Makefile.PL > creating port/master.mk > creating port/Makefile > expanding `include's in file `Makefile' > expanding `include's in file `perl/Makefile.PL' > expanding `include's in file `port/master.mk' > expanding `include's in file `port/Makefile' > > [hbatch@localhost]# make > cd perl && perl Makefile.PL > Checking if your kit is complete... > Looks good > Writing Makefile for NetCDF > make[1]: Entering directory `/home/squid/hbatch/ncdperl/netcdf-perl-1.2/src' > make[2]: Entering directory `/home/squid/hbatch/ncdperl/netcdf-perl-1.2/src' > > making `dynamic' in directory > /home/squid/hbatch/ncdperl/netcdf-perl-1.2/src/perl > > make[3]: Entering directory > `/home/squid/hbatch/ncdperl/netcdf-perl-1.2/src/perl' > /usr/local/bin/perl -I/usr/local/lib/perl5/5.00503/i686-linux > -I/usr/local/lib/perl5/5.00503 /usr/local/lib/perl5/5.00503/ExtUtils/xsubpp > -typemap /usr/local/lib/perl5/5.00503/ExtUtils/typemap NetCDF.xs >xstmp.c && > mv > xstmp.c NetCDF.c > Please specify prototyping behavior for NetCDF.xs (see perlxs manual) > cc -c -I/usr/local/netcdf-3.4/include -Dbool=char -DHAS_BOOL > -I/usr/local/include -O2 -DVERSION=\"1.2\" -DXS_VERSION=\"1.2\" -fpic > -I/usr/local/lib/perl5/5.00503/i686-linux/CORE NetCDF.c > In file included from NetCDF.xs:23: > /usr/include/assert.h:79: warning: `assert' redefined > /usr/local/lib/perl5/5.00503/i686-linux/CORE/perl.h:1501: warning: this is the > location of the previous definition > mkdir blib > mkdir blib/arch > mkdir blib/arch/auto > mkdir blib/arch/auto/NetCDF > Running Mkbootstrap for NetCDF () > chmod 644 NetCDF.bs > LD_RUN_PATH="/usr/local/netcdf-3.4/lib" cc -o blib/arch/auto/NetCDF/NetCDF.so > -shared -L/usr/local/lib NetCDF.o -L/usr/local/netcdf-3.4/lib -lnetcdf > chmod 755 blib/arch/auto/NetCDF/NetCDF.so > cp NetCDF.bs blib/arch/auto/NetCDF/NetCDF.bs > chmod 644 blib/arch/auto/NetCDF/NetCDF.bs > make[3]: Leaving directory > `/home/squid/hbatch/ncdperl/netcdf-perl-1.2/src/perl' > > returning to directory /home/squid/hbatch/ncdperl/netcdf-perl-1.2/src > > make[2]: Leaving directory `/home/squid/hbatch/ncdperl/netcdf-perl-1.2/src' > make[1]: Leaving directory `/home/squid/hbatch/ncdperl/netcdf-perl-1.2/src' > test ! -f perl/so_locations || chmod a+w perl/so_locations > > > [hbatch@localhost]# make test > make[1]: Entering directory `/home/squid/hbatch/ncdperl/netcdf-perl-1.2/src' > > making `test' in directory /home/squid/hbatch/ncdperl/netcdf-perl-1.2/src/perl > > make[2]: Entering directory > `/home/squid/hbatch/ncdperl/netcdf-perl-1.2/src/perl' > mkdir blib/lib > mkdir blib/lib/auto > mkdir blib/lib/auto/NetCDF > cp netcdftemplate.pl blib/lib/netcdftemplate.pl > cp NetCDF.pm blib/lib/NetCDF.pm > AutoSplitting blib/lib/NetCDF.pm (blib/lib/auto/NetCDF) > PERL_DL_NONLAZY=1 /usr/local/bin/perl -Iblib/arch -Iblib/lib > -I/usr/local/lib/perl5/5.00503/i686-linux -I/usr/local/lib/perl5/5.00503 > test.pl > Can't load 'blib/arch/auto/NetCDF/NetCDF.so' for module NetCDF: > blib/arch/auto/NetCDF/NetCDF.so: undefined symbol: fstat at > /usr/local/lib/perl5/5.00503/i686-linux/DynaLoader.pm line 169. Can't find "fstat" eh? This would seem to indicate a problem with your environment (the Unix standard requires that fstat exist in the runtime library). You might try discovering what library the fstat function is in and then referenencing that library during the build process. See step 5 under INSTALLATION INSTRUCTIONS in the INSTALL file. Regards, Steve Emmerson <http://www.unidata.ucar.edu>