[mpich-discuss] Linking problem (underscore prefix)

Jayesh Krishna jayesh at mcs.anl.gov
Mon Oct 4 12:16:38 CDT 2010


Hi,
 Did you try using the same compiler (Intel compiler) for building MPICH2, netcdf & your application ?

Regards,
Jayesh
----- Original Message -----
From: "Kunal Rao" <kunalgrao at gmail.com>
To: mpich-discuss at mcs.anl.gov
Cc: parallel-netcdf at lists.mcs.anl.gov
Sent: Monday, October 4, 2010 11:19:04 AM GMT -06:00 US/Canada Central
Subject: Re: [mpich-discuss] Linking problem (underscore prefix)


Hi 


As discussed before, I was able to create the parallel netcdf library on Windows using the cygwin environment. I am having some issues while linking this library with my application built with intel compilers ( I am using intel compilers also through cygwin ). 


I know this kind of setup is not supported, but I would like to get your inputs on this. Here is what I did: 


1) The libpnetcdf.a library was created in /usr/local/lib folder. I built libpnetcdf.lib library from this *.a library through the lib.exe tool as follows: 


$ lib.exe /OUT:libpnetcdf.lib libpnetcdf.a 


2) Now, I am trying to link this libpnetcdf.lib library with my application ( using Intel compilers for building the application ). But while linking, I am getting 28 unresolved external symbol (all related to the libpnetcdf.lib library) errors such as this: 


------------ 
io_ncmpi_def_dims.o : error LNK2019: unresolved external symbol ncmpi_def_dim referenced in function io_ncmpi_def_dims_ 
----------- 


3) When I checked in io_ncmpi_def_dim.o file for the symbol using : $ dumpbin.exe /SYMBOLS io_ncmpi_def_dim.o 

I see this symbol as follows: 

----------- 
008 00000000 UNDEF notype () External | ncmpi_def_dim 
----------- 



4) When I check the same symbol in the libpnetcdf.lib library, I see it as follows: 

----------- 
01B 00000000 UNDEF notype () External | _ncmpi_def_dim 
----------- 



So basically, there is an underscore prefix in the symbol in the library where as it is not there in the object file. Any thoughts on how to resolve this ? 


Thanks & Regards, 
Kunal 


On Sat, Oct 2, 2010 at 7:11 PM, Kunal Rao < kunalgrao at gmail.com > wrote: 


Hi 


I was able to configure and build the parallel netcdf library on Windows using the cygwin environment and MPICH2 as the MPI implementation. I still have to check if this library works with the application that I am trying to link it to. 


Here are the steps that I have followed: 
a) Downloaded the MPICH2 source code (1.2.1p1) from http://www.mcs.anl.gov/research/projects/mpich2/ 
b) Did the regular configure/make/make install steps in the cygwin environment in Windows. 
( set C compiler as gcc and Fortran compiler as gfortran) 
c) Downloaded parallel netcdf (parallel-netcdf-1.2.0.tar.gz) from http://trac.mcs.anl.gov/projects/parallel-netcdf/wiki/Download 
d) Again, did the regular configure/make/make install steps for parallel netcdf in cygwin environment in Windows and used the previously built MPICH2 as the mpi implementation ( for the --with-mpi option) 


The steps went fine and the libpnetcdf.a library has been built on Windows through the cygwin environment. I will next check if this links properly and works with the application. 


Thanks & Regards, 
Kunal 





On Sat, Oct 2, 2010 at 2:49 PM, Jayesh Krishna < jayesh at mcs.anl.gov > wrote: 


Hi, 
As Rob mentioned the error might be due to the way netcdf checks for MPI-IO support. 
Can you give us details on how you configure netcdf with MPICH2 ? 

(PS: MPI-IO is available with MPICH2 on windows even if you use the installers for your installation.) 


Regards, 
Jayesh 
----- Original Message ----- 
From: "Kunal Rao" < kunalgrao at gmail.com > 
To: mpich-discuss at mcs.anl.gov 



Sent: Saturday, October 2, 2010 12:08:52 PM GMT -06:00 US/Canada Central 
Subject: Re: [mpich-discuss] query on MPICH2 on Windows 


Hi 


Initially, I had used the installers availabe at the MPICH 2 website and that was giving the error mentioned before. I then, downloaded 
the source code and built MPICH2 from that (configure/make/make install) in cygwin and linked this MPI while configuring parallel 
netcdf. Now, it is not giving that error and it moved ahead. 


Thanks & Regards, 
Kunal 


On Fri, Oct 1, 2010 at 8:18 PM, Jayesh Krishna < jayesh at mcs.anl.gov > wrote: 


Hi, 
Did you build MPICH2 from source (configure/make/make install) under cygwin environment ? Or did you install MPICH2 using installers available at the MPICH2 website ? 

Regards, 
Jayesh 



----- Original Message ----- 
From: "Kunal Rao" < kunalgrao at gmail.com > 
To: mpich-discuss at mcs.anl.gov 
Sent: Friday, October 1, 2010 5:01:38 PM GMT -06:00 US/Canada Central 
Subject: [mpich-discuss] query on MPICH2 on Windows 



Hi 


Does MPICH2 on Microsoft Windows support MPI-IO ? 


I was checking on this site http://www.mcs.anl.gov/research/projects/romio/ where it says that ROMIO is included as a part of MPICH 2. 


The reason I ask this is because I am trying to configure parallel netcdf library on Windows through the cygwin environment. While doing "configure" it stops with the following message: 



---------------- 


checking MPI-IO support in MPI implementation... configure: error: mpi implementation does not support MPI-IO 


--------------- 


The MPI implementation I used is MPICH2 which I was assuming supported MPI-IO on Windows as well. I tried using MSMPI but even that stopped with the same message. Any thoughts on this ? 


Thanks & Regards, 
Kunal 




_______________________________________________ 
mpich-discuss mailing list 
mpich-discuss at mcs.anl.gov 
https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss 


_______________________________________________ 
mpich-discuss mailing list 
mpich-discuss at mcs.anl.gov 
https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss 



_______________________________________________
mpich-discuss mailing list
mpich-discuss at mcs.anl.gov
https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss


More information about the mpich-discuss mailing list