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

[netCDFPerl #FUY-836234]: more netcdf perl build issues



Jonathan,

> latest....
> 
> # /usr/local/bin/ncdump
> -snip-
> netcdf library version 4.2 of Apr 12 2012 13:55:11 $
> 
> # ldd /usr/local/bin/ncdump | grep curl
> libcurl.so.3 => /usr/lib64/libcurl.so.3 (0x0000003f1ca00000)
> 
> 
> and rebuild try:
> 
> 1013  make distclean
> 1014  export CFLAGS="-fPIC" && export PERL_MANDIR=/usr/share/man && export
> CPP_NETCDF='-I/usr/local/include' && export LD_NETCDF='-L/usr/lib64
> -L/usr/local/lib -lnetcdf -L/usr/local/lib -lhdf5 -lhdf5_hl' && ./configure

Oops! The LD_NETCDF environment variable doesn't reference the "curl" library.

> &>configure.log && echo OK
> 1015  cat configure.log
> 1016  cat config.log
> 1017  make perl/Makefile &>makefile.log && echo OK
> 1018  make &>make.log && echo OK
> 1019   make test &>test.log && echo OK
> 
> 
> # cat configure.log
> creating cache ./config.cache
> checking for manual-page index command...
> checking for perl... perl
> checking for perl manual page directory... /usr/share/man
> checking for value of perl POLLUTE variable... 0
> checking for neqn... neqn
> checking for tbl... tbl
> checking for c89... c89
> checking type of operating system... linux
> checking for tar flags... -chof
> checking for netCDF header-file... -I/usr/local/include
> checking for netCDF library... -L/usr/lib64 -L/usr/local/lib -lnetcdf
> -L/usr/local/lib -lhdf5 -lhdf5_hl
> 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'
> 
> # cat config.log
> This file contains any messages produced by compilers while
> running configure, to aid debugging if configure makes a mistake.
> 
> configure:635: checking for manual-page index command
> configure:648: checking for perl
> configure:694: checking for perl manual page directory
> configure:712: checking for value of perl POLLUTE variable
> configure:759: checking for neqn
> configure:791: checking for tbl
> configure:1099: checking for c89
> configure:1186: checking type of operating system
> configure:1263: checking for tar flags
> configure:1279: checking for netCDF header-file
> configure:1306: checking for netCDF library
> configure:1335: checking for package version
> 
> # cat test.log
> make[1]: Entering directory `/root/netcdf-perl-1.2.4/src'
> 
> making `test' in directory /root/netcdf-perl-1.2.4/src/perl
> 
> make[2]: Entering directory `/root/netcdf-perl-1.2.4/src/perl'
> cp NetCDF.pm blib/lib/NetCDF.pm
> AutoSplitting blib/lib/NetCDF.pm (blib/lib/auto/NetCDF)
> PERL_DL_NONLAZY=1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl
> Can't load 'blib/arch/auto/NetCDF/NetCDF.so' for module NetCDF:
> blib/arch/auto/NetCDF/NetCDF.so: undefined symbol: curl_easy_getinfo at
> /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm line 230.
> at test.pl line 5
> Compilation failed in require at test.pl line 5.
> BEGIN failed--compilation aborted at test.pl line 5.
> make[2]: *** [test_dynamic] Error 2
> make[2]: Leaving directory `/root/netcdf-perl-1.2.4/src/perl'
> make[1]: *** [perl/test] Error 1
> make[1]: Leaving directory `/root/netcdf-perl-1.2.4/src'
> make: *** [test] Error 2
> 
> 
> 
> Did I set LD_NETCDF correctly as you suggested?

Set the LD_NETCDF environment variable to "-L/usr/local/lib -lnetcdf -lhdf5 
-lhdf5_hl -L/usr/lib64 -lcurl" and try again.

> thanks
> Jonathan

Regards,
Steve Emmerson

Ticket Details
===================
Ticket ID: FUY-836234
Department: Support netCDF Perl
Priority: Normal
Status: Closed


NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.