Really appreciate you having looked into this!

Unfortunately, I can't see a way to resolve this for the general public. It 
looks more to me like a PGI bug, frankly - not supporting code in a 
system-level include makes no sense to me. But I confess this seems to be PGI's 
mode of operation as I've seen similar issues with their compilers under other 
OS's as well.

We obviously cannot replace Mac's if.h with the PGI-custom version, nor can we 
distribute the PGI-custom version for use in that situation. So until/unless 
PGI fixes their problem, I think this has to be a one-off solution.

Again, thanks for looking into it. Glad that it works for you!
Ralph


On Mar 3, 2011, at 1:28 PM, David Robertson wrote:

> UPDATE:
> 
> Sorry for the delay but I wanted to make sure PGI was ok with me sharing 
> their workaround.
> 
> Further conversation with PGI tech support has yielded a solution. The 
> opal/util/if.c file has the following around line 63:
> 
> #include <net/if.h>
> 
> Here is the explanation I have from PGI:
> 
> <<<<< Start Quote
> For 64-bit only there might be an issue of 'not running/crashing'
> when it tries to establish the connection.
> 
> The reason is probably because a source file  includes <net/if.h>.
> <net/if.h> has some source code that we don't support , namely
> #pragma pack(4)
> I think currently ignore it.
> 
> The file is: opal/util/if.c  that  includes <net/if.h>.
> You may succeed  by  including the  attached pgi.h instead of <net/if.h>.
> End Quote >>>>>
> 
> I followed this advise along with editing the 
> share/openmpi/mpif*-wrapper-data.txt files to have full paths to the static 
> libraries instead of just -lmpi_f90, -lmpi_f77, -lmpi, etc.
> 
> Dave
> <pgi.h>_______________________________________________
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Reply via email to