Problem building parallel-netcdf on ia64 (Linux)

Robert Latham robl at mcs.anl.gov
Wed Jan 17 18:10:49 CST 2007


On Tue, Dec 19, 2006 at 12:14:18PM -0800, Koontz, Annette S wrote:
> I saw a post to this mailing list in March and/or April of 2006, where
> someone was having the same problem I am currently having:
> 
> ../../../src/lib/libpnetcdf.a(mpinetcdf.o)(.text+0x1ff12): In function
> `ncmpi_request_get_status':
> /home/d34863/pnetcdf/parallel-netcdf-1.0.1/src/lib/mpinetcdf.c:8218:
> undefined reference to `MPI_Request_get_status'
> ../../../src/lib/libpnetcdf.a(mpinetcdf.o)(.text+0x20ff2): In function
> `ncmpi_iget_var1':
> /home/d34863/pnetcdf/parallel-netcdf-1.0.1/src/lib/mpinetcdf.c:8528:
> undefined reference to `MPI_Type_dup'
> ../../../src/lib/libpnetcdf.a(mpinetcdf.o)(.text+0x21162):/home/d34863/p
> netcdf/parallel-netcdf-1.0.1/src/lib/mpinetcdf.c:8528: undefine

On Thu, Jan 11, 2007 at 02:11:50PM -0700, Amjad Majid Ali wrote:
> But it gives following error
> 
> usr/local/xlf/bin/mpicc -o ncmpigen -O3  main.o load.o ncgentab.o  
> escapes.o getfill.o init.o genlib.o -L../../../src/lib -lpnetcdf
> ld: Undefined symbols:
> _MPI_Request_get_status


Hi

I have a patch that both of you (and anybody else with a problem
building pnetcdf against an MPI-1 implementation) can try out.  It
will disable the nonblocking API, but pnetcdf will use only mpi-1
routines.    (actually, because this patch does not adjust
configure.in, it has the effect of disabling the nonblocking api for
all users).  

If you could try out this patch and let me know how well it works for
you, I'll add it to the next release (with a proper configure check,
of course :> )

==rob

-- 
Rob Latham
Mathematics and Computer Science Division    A215 0178 EA2D B059 8CDF
Argonne National Lab, IL USA                 B29D F333 664A 4280 315B
-------------- next part --------------
? .swp
? cdf2-fix.diff
? mpi-1.patch
? doc/doxygen
? doc/pnetcdf-doxygen.conf
Index: src/lib/mpinetcdf.c
===================================================================
RCS file: /homes/gropp/cvsMaster_z/parallel-netcdf/src/lib/mpinetcdf.c,v
retrieving revision 1.50
diff -u -p -r1.50 mpinetcdf.c
--- src/lib/mpinetcdf.c	5 Dec 2006 20:41:22 -0000	1.50
+++ src/lib/mpinetcdf.c	18 Jan 2007 00:04:10 -0000
@@ -7796,6 +7796,7 @@ ncmpi_get_varm_double(int ncid, int vari
 
 /* End {put,get}_var */
 
+#ifdef ENABLE_NONBLOCKING
 /* #################################################################### */
 /* Begin non-blocking data access functions */
 
@@ -11940,3 +11941,4 @@ ncmpi_iget_varm_double(int ncid, int var
 
 /* End non-blocking data access functions */
 /* #################################################################### */
+#endif
Index: src/lib/pnetcdf.h
===================================================================
RCS file: /homes/gropp/cvsMaster_z/parallel-netcdf/src/lib/pnetcdf.h,v
retrieving revision 1.20
diff -u -p -r1.20 pnetcdf.h
--- src/lib/pnetcdf.h	22 Oct 2005 16:31:31 -0000	1.20
+++ src/lib/pnetcdf.h	18 Jan 2007 00:04:10 -0000
@@ -1443,6 +1443,7 @@ int ncmpi_get_varm_double(int ncid, int 
 /* #################################################################### */
 /* Begin: more prototypes to be included for fortran binding conversion */
 
+#ifdef ENABLE_NONBLOCKING
 /* Begin non-blocking data access functions */
 
 int
@@ -2087,6 +2088,7 @@ int ncmpi_iget_varm_double(int ncid, int
 /* End {put,get}_varm */
 
 /* End non-blocking data access functions */
+#endif
 
 /* End: more prototypes to be included for fortran binding conversion */
 /* ################################################################## */


More information about the parallel-netcdf mailing list