[ncl-install] troubles compiling NCL with PGI and gcc on CentOS

Mary Haley haley at ucar.edu
Thu Oct 25 16:14:14 MDT 2012


Is it possible you are just missing a "-lpng" on the compile line?

You can get our version of the g2clib from:

http://www.ncl.ucar.edu/Download/build_from_src.shtml#GRIB2

This also includes instructions on how to build GRIB2 to work with NCL.

I'll include the list of libs that the PGI folks recommended in our LINUX.64.PGI file for future reference. Thanks for providing it.

--Mary

On Oct 25, 2012, at 3:53 PM, Tiziana Cherubini wrote:

> Hi Mary,
> 
> Thank you for your reply. We only purchase the PGI fortran license, and we compile most of our codes with a combination of PGI fortran and gcc. Usually it works. In this instance I was able to get some help from the PGI people and these are the list of libraries they gave me in order to make it work:
> 
> -L/usr/pgi/linux86-64/12.9/lib  -lpgmp -lnuma -lpthread -lpgf90 -lpgf90_rpm1 -lpgf902 -lpgf90rtl -lpgftnrtl -lnspgc -lpgc -lrt -lpthread -lm
> 
> and that resolves that problem. 
> 
> Now I am having an issue with the g2clib (undefined references to the png_set_longjmp_fn function. I believe is due to version inconsistencies between the current version of g2clib (1.4, installed on our system) and the ones used within NCL… and I read on the INSTALL that you recommend to use the package g2clib_with_changes-1.2.1.tar.gz. But I cannot find it. Where can I download this package from ?
> 
> Thank you for your help,
> 
> Tiziana.
> 
> ---
> Tiziana Cherubini, PhD
> Research Meteorologist, MKWC (http://mkwc.ifa.hawaii.edu)
> University of Hawaii - Dept. of Meteorology
> 2525 Correa Rd HIG 367 Honolulu HI 96822
> tel  (808) 956 4593
> fax (808) 956 2877
> 
> 
> 
> On Oct 25, 2012, at 5:56 AM, Mary Haley <haley at ucar.edu> wrote:
> 
>> Tiziana,
>> 
>> Since you are using gcc and not pgcc, the "-pgf90libs" option is not going to be recognized. You may need to uncomment
>> the other CtoFLibraries line that lists the "-l" libraries separately.
>> 
>> Is there a reason you're using gcc and not pgcc?
>> 
>> --Mary
>> 
>> On Oct 24, 2012, at 4:58 PM, Tiziana Cherubini wrote:
>> 
>>> Aloha,
>>> 
>>> I am trying to compile the ncl/ncarg graphics on our server running CentOS (uname -a => Linux io.ifa.hawaii.edu 2.6.32-279.el6.x86_64 #1 SMP Fri Jun 22 12:19:21 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux), with gcc (v4.4.6 ), and pgi (v12.9). 
>>> 
>>> I set up the configuration file to look like:
>>> 
>>> /*
>>> *  Description:  This file contains all the directives needed to
>>> *                tell ymake how to build NCARG/NCL on a 64-bit
>>> *                LINUX system using the Portland Group compilers.
>>> *
>>> *                Copy this file to the LINUX file in this directory
>>> *                before you start the NCL/NCARG build.
>>> */
>>> #define HdfDefines  -DLINUX64
>>> #define StdDefines  -DSYSV -D_POSIX_SOURCE -D_XOPEN_SOURCE -DByteSwapped
>>> #define ByteSwapped
>>> #define Cstatic
>>> #define Cdynamic
>>> #define CppCommand '/usr/bin/cpp -traditional'
>>> #define CCompiler     gcc
>>> #define FCompiler     pgf90 -tp k8-64 -O -Msignextend -Mreentrant -fPIC -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
>>> /*
>>> #define CtoFLibraries -lpgc -lpgf90  -lpgf90_rpm1  -lpgf902 -lpgftnrtl -lpghpf
>>> */
>>> #define CtoFLibraries -pgf90libs
>>> #define XToolLibrary -lXt -lSM -lICE
>>> #define BuildShared NO
>>> #define ExtraExportFlags -Wl,--export-dynamic
>>> 
>>> #define ArchRecLibSearch -L/usr/X11R6/lib64
>>> #define ArchRecIncSearch -I/usr/X11R6/include
>>> 
>>> FC = $(F77)
>>> 
>>> 
>>> But I get undefined references to the fortran libraries (please see below for an extract of the make log file). I believe the problem is in the CtoFlibaries… perhaps I shouldn't be using the  -pgf90libs ? Any suggestion on what to change in this respect would be greatly appreciated.
>>> 
>>> Thank you very much,
>>> 
>>> Tiziana.
>>> 
>>> ...
>>> gcc  -O    -o ictrans main.o ../../../.././ncarview/src/lib/libictrans/libictrans.o ../../../.././ncarview/src/lib/libctrans/libctrans.o -L../../../.././ncarview/src/lib/libcgm -lcgm -L../../../.././ncarview/src/lib/libncarg_ras -lncarg_ras                        -L../../../.././common/src/libncarg_c -lncarg_c -L/usr/local/ncarg/lib -L/usr/lib64/X11 -L/usr/local/lib -L/opt/pgi/linux86-64/12.9/lib -L/usr/local/netcdf-4.1.3-NoHDF4/lib -lX11   -lmfhdf -ldf -ljpeg -lz -lsz -pgf90libs
>>> gcc: unrecognized option '-pgf90libs'
>>> ../../../.././ncarview/src/lib/libcgm/libcgm.a(meta_edit.o): In function `CGM_initMetaEdit':
>>> meta_edit.c:(.text+0x1295): warning: the use of `mktemp' is dangerous, better use `mkstemp'
>>> ../../../.././ncarview/src/lib/libictrans/libictrans.o: In function `giargs_':
>>> /usr/local/ncl_ncarg-6.0.0-src/ncarview/src/lib/libictrans/./fort_ictrans.f:54: undefined reference to `pgf90_str_copy'
>>> ../../../.././ncarview/src/lib/libictrans/libictrans.o: In function `.C2_303':
>>> fort_ictrans.f:(.data+0x1b20): undefined reference to `pgf90_compiled'
>>> collect2: ld returned 1 exit status
>>> make[5]: *** [ictrans] Error 1
>>> make[5]: Leaving directory `/usr/local/ncl_ncarg-6.0.0-src/ncarview/src/bin/ictrans'
>>> 
>>> 
>>> ---
>>> Tiziana Cherubini, PhD
>>> Research Meteorologist, MKWC (http://mkwc.ifa.hawaii.edu)
>>> University of Hawaii - Dept. of Meteorology
>>> 2525 Correa Rd HIG 367 Honolulu HI 96822
>>> tel  (808) 956 4593
>>> fax (808) 956 2877
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> ncl-install mailing list
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-install
>> 
> 



More information about the ncl-install mailing list