In general, Open MPI just uses whatever name mangling scheme the compiler uses. Hence, if you compile your app and Open MPI with the same compiler, it should just work. That being said, if your CLM app is supplying its own name mangling scheme flags to the PGI compiler (i.e., shifting it away from its default scheme), then yes, OMPI won't match it. You can pass the same flags to OMPI's build process if you want; then they should match.

We do provide weak symbols on platforms that support them, so it's a little odd that your app apparently isn't seeing them.


On Dec 4, 2008, at 2:33 PM, Elvedin Trnjanin wrote:

I'm using OpenMPI 1.2.5 and PGI 7.1.5 compiler suite to get CLM 3.5 working correctly. When compiling for OpenMPI, I encounter the following snippet of errors -

areaMod.o(.text+0x98a0): In function `areamod_map_checkmap_':
: undefined reference to `mpi_reduce_'
areaMod.o(.text+0x9b6c): In function `areamod_map_checkmap_':
: undefined reference to `mpi_reduce_'
areaMod.o(.text+0x9c39): In function `areamod_map_checkmap_':
: undefined reference to `mpi_reduce_'
areaMod.o(.text+0x9ea2): more undefined references to `mpi_reduce_'


When compiling for MPICH2, it works just fine. I assume this is going to lead to recompiling OpenMPI so I am wondering which PGI name mangling options to pass either the OpenMPI compile, or CLM compile to get the names in order?

Thanks,
Elvedin

_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users


--
Jeff Squyres
Cisco Systems

Reply via email to