[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 20000218: problems installing netCDFPerl-1.2



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>