Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

CLM 3.5 and OpenMPI

When trying to compile with OpenMPI (1.2.5), we get messages such as


Code:
undefined reference to `mpi_barrier_'
>>>>>>>>>>>>>>>>> decompMod.o(.text+0x7769): In function


However, it works with MPICH2 (1.0.6p1). Since we prefer to use OpenMPI, what is necessary to get it working with CLM?
 

erik

Erik Kluzek
CSEG and Liaisons
Staff member
You didn't mention specific compilers or platforms or anything, so I can't be specific. But, most likely this is a problem with "Fortran name mangling". When you compile Fortran code it changes the names of the calls and subroutine names to add "_" underscores to the front or back and/or change the case. On some compilers such as PGI you have some control on how the name mangling happens, and there are options such as -no_underscoring, or -no_second_underscore to determine how they are dealt with.

So the bottom line is that you need to compile CLM the same way as the OpenMPI code was compiled with those same Fortran mangling options.

Good luck...
 
We are using PGI 7.1-5 compilers and I went through the CLM configure scripts and options that I could find, but couldn't find anything that passes name mangling options. Is such a thing even happening during a CLM build?
 
Top