[netcdfgroup] linking netcdf to serial code on yellowstone


Hi,

I am having trouble linking netcdf to a *serial* post-processor
since the yellowstone upgrade last week. The symptoms appear to
be a conflict with libhdf5 and libnetcdf_c++4 leading to undefined
references to gfortran functions. I am building with Intel/ifort.
Below is a clip from the failed build. Note I am *not* specifying a
-L path to netcdf, just link -lnetcdf, so am assuming it is linking
default lib 4.3.0 according to my module settings - here's my module list:

[foster@yslogin3 tgcmproc_f90]$ module list
Currently Loaded Modules:
1) ncarenv/1.0 4) ncarcompilers/1.0 7) idl/8.2.3 10) esmf-6.3.0r-ncdfio-mpi-O
  2) ncarbinlibs/1.1    5) netcdf/4.3.0         8) job_memusage/1.0
  3) intel/12.1.5       6) ncl/6.2.0            9) esmf

And here is module avail netcdf:

[foster@yslogin3 tgcmproc_f90]$ module avail netcdf

----------------------------------- /glade/apps/opt/modulefiles/ys/cdep/intel ------------------------------------
   netcdf-mpi/4.2            netcdf/4.2            pnetcdf/1.3.0
   netcdf-mpi/4.3.0  (D)     netcdf/4.3.0  (D)     pnetcdf/1.4.1  (D)


Thanks for any help on this. Here's the last few compilations, and
the link error from the build:


ifort -O2 -DLINUX   -c -o pltmaps.o pltmaps.F
ifort -O2 -DLINUX   -c -o getflds.o getflds.F
ifort -O2 -DLINUX   -c -o mksatut.o mksatut.F
ifort -O2 -DLINUX   -c -o tgcmproc.o tgcmproc.F
OBJS=allocf.o ampha.o conrec.o denconv.o doppler.o egadb.o epflux.o fields.o fixnamelist.o flist.o fset_known.o getfile.o getflds.o gethist.o getna.o getoh.o gettime.o gfac.o hdr3rec.o hist.o htint.o input.o mapeod.o mkauxflds.o mkcdf.o mkcon.o mkderived.o mkdrifts.o mkemiss.o mkhvols.o mklats.o mklons.o mkmaps.o mksatcdf.o mksatut.o mkutlat.o mkutlon.o mkutvert.o mkv5d.o mkxyloc.o mkxyut.o mkzmslt.o napart.o nchist_mod.o ohrad.o opnwrk.o plt.o pltmaps.o pltxy.o proc.o proclat.o proclat_old.o qadglb.o qbary.o rfft.o scrub_hvols.o setloctype.o setvert.o solred.o tgcmproc.o util.o wrlab6.o ifort -o tgcmproc_f90 allocf.o ampha.o conrec.o denconv.o doppler.o egadb.o epflux.o fields.o fixnamelist.o flist.o fset_known.o getfile.o getflds.o gethist.o getna.o getoh.o gettime.o gfac.o hdr3rec.o hist.o htint.o input.o mapeod.o mkauxflds.o mkcdf.o mkcon.o mkderived.o mkdrifts.o mkemiss.o mkhvols.o mklats.o mklons.o mkmaps.o mksatcdf.o mksatut.o mkutlat.o mkutlon.o mkutvert.o mkv5d.o mkxyloc.o mkxyut.o mkzmslt.o napart.o nchist_mod.o ohrad.o opnwrk.o plt.o pltmaps.o pltxy.o proc.o proclat.o proclat_old.o qadglb.o qbary.o rfft.o scrub_hvols.o setloctype.o setvert.o solred.o tgcmproc.o util.o wrlab6.o wrxdrc.o v5d.o binio.o -lhlu -lncarg -lncarg_gks -lncarg_c -lX11 -lXext -lcairo -lfontconfig -lpixman-1 -lfreetype -lexpat -lpng -lz -lpthread -lbz2 -lXrender -lgfortran -lnetcdf ld: warning: libhdf5_hl.so.7, needed by /glade/apps/opt/netcdf/4.2/gnu/4.7.2/lib/libnetcdf_c++4.so.1, may conflict with libhdf5_hl.so.8 ld: warning: libhdf5.so.7, needed by /glade/apps/opt/netcdf/4.2/gnu/4.7.2/lib/libnetcdf_c++4.so.1, may conflict with libhdf5.so.8 /glade/apps/opt/ncl/6.2.0/gnu/4.7.2/lib/libhlu.a(ERRORF.o): In function `nhlpfprnmes_': ERRORF.f:(.text+0x61): undefined reference to `_gfortran_transfer_character_write' ERRORF.f:(.text+0xee): undefined reference to `_gfortran_transfer_character_write' /glade/apps/opt/ncl/6.2.0/gnu/4.7.2/lib/libhlu.a(CnTriMeshRenderer.o): In function `RasterFillRender._omp_fn.1': CnTriMeshRenderer.c:(.text+0x30e2): undefined reference to `omp_get_num_threads' CnTriMeshRenderer.c:(.text+0x3102): undefined reference to `omp_get_thread_num'
CnTriMeshRenderer.c:(.text+0x3208): undefined reference to `GOMP_barrier'
CnTriMeshRenderer.c:(.text+0x3211): undefined reference to `GOMP_barrier'
/glade/apps/opt/ncl/6.2.0/gnu/4.7.2/lib/libhlu.a(CnTriMeshRenderer.o): In function `BuildDelaunayMesh._omp_fn.0': CnTriMeshRenderer.c:(.text+0x3247): undefined reference to `omp_get_thread_num' CnTriMeshRenderer.c:(.text+0x3250): undefined reference to `omp_get_num_threads'
CnTriMeshRenderer.c:(.text+0x326c): undefined reference to `GOMP_barrier'
CnTriMeshRenderer.c:(.text+0x3975): undefined reference to `GOMP_barrier'
/glade/apps/opt/ncl/6.2.0/gnu/4.7.2/lib/libhlu.a(CnTriMeshRenderer.o): In function `InitMesh': CnTriMeshRenderer.c:(.text+0x428e): undefined reference to `GOMP_parallel_start' CnTriMeshRenderer.c:(.text+0x42a0): undefined reference to `GOMP_parallel_end' /glade/apps/opt/ncl/6.2.0/gnu/4.7.2/lib/libhlu.a(CnTriMeshRenderer.o): In function `CnTriMeshRender': CnTriMeshRenderer.c:(.text+0xabba): undefined reference to `GOMP_parallel_start' CnTriMeshRenderer.c:(.text+0xabcc): undefined reference to `GOMP_parallel_end' /glade/apps/opt/ncl/6.2.0/gnu/4.7.2/lib/libncarg.a(cpgiws.o): In function `cpgiws_': cpgiws.f:(.text+0x153): undefined reference to `_gfortran_transfer_integer_write' cpgiws.f:(.text+0x167): undefined reference to `_gfortran_transfer_integer_write'


--Ben



  • 2014 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: