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.
John, I believe the problem you're having stems from different compilers being used to compile the perl(1), netCDF(3), and NetCDF-Perl(3) packages. You used pgcc(1) to compile the NetCDF-Perl package. You can discover the compiler used for the perl(1) utility via the command perl -V You'll have to look in the source-directory of the netCDF package to discover which compiler was used (I suspect it was gcc(1)). You're more likely to obtain a successful build if you can use the same compiler for all these packages. Regards, Steve Emmerson 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. ------- Original Message >To: address@hidden >From: "John Nordlie" <address@hidden> >Subject: netCDF Perl Interface - problem using netcdf-perl: __buitin__alloca >Organization: University of North Dakota >Keywords: 200511020006.jA206YNS028796 netCDF Perl Institution: University of North Dakota Package Version: 1.2.3 Operating System: Redhat Linux Enterprise Worstation 3 Hardware Information: Dual Opteron, 1GB RAM, RAID Inquiry: System has PGI compilers (C and FORTRAN). Built and installed NetCDF 3.5.1, using following environment variables: setenv CPP_NETCDF -I/usr/local/include setenv LD_NETCDF "-L/usr/local/lib -lnetcdf" setenv PERL /usr/bin/perl setenv PERL_MANDIR /usr/local/man setenv CC pgcc setenv CFLAGS "-O -Msignextend -V -fPIC" setenv FC pgf90 setenv F90 pgf90 setenv FFLAGS "-g -w -V" setenv CXX pgCC setenv CPPFLAGS "-DNDEBUG -DpgiFortran" as per PGI webpage: http://www.pgroup.com/resources/netcdf/netcdf351_pgi5x_64.htm Package built and installed with no errors in /usr/local. Built netcdf-perl-1.2.8 using same enviro variables and installed in default lo cation (didn't specify prefix in ./configure) with no errors, however when tryi ng to use, we get this: mdssfp@lisa:../scripts/perl> perl mos2nc /home/mdssfp/etc/mav_mos.cdl test < /home/mdssfp/mdss_data/raw_data/mos/mav_mos/20051101/mav_mos.20051101.1200.asc 23:47:47 Starting. perl: relocation error: /usr/lib64/perl5/site_perl/5.8.0/auto/NetCDF/NetCDF.so: undefined symbol: __builtin_alloca Verified as per PGI page that CXX was set to pgCC in macros.make (it was). 'make test' in build directory also dies: [nordlie@lisa src]$ make test make[1]: Entering directory `/home/nordlie/download/netcdf-perl-1.2.3/src' making `test' in directory /home/nordlie/download/netcdf-perl-1.2.3/src/perl make[2]: Entering directory `/home/nordlie/download/netcdf-perl-1.2.3/src/perl' 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: __builtin_alloca at /usr/lib64/perl5/5.8.0/ x86_64-linux-thread-multi/DynaLoader.pm line 229. 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 255 make[2]: Leaving directory `/home/nordlie/download/netcdf-perl-1.2.3/src/perl' make[1]: *** [perl/test] Error 1 make[1]: Leaving directory `/home/nordlie/download/netcdf-perl-1.2.3/src' make: *** [test] Error 2 ------- End of Original Message