Oh, I missed that. Then, yes, I agree. We can't support that.
That sounds like a bug PGI will need to fix, in general. On Mar 11, 2011, at 4:34 PM, Ralph Castain wrote: > That's not good enough - you have to use PGI's hacked version of if.h instead. > > Hence my comment that we can't fix this for the general case. > > On Mar 11, 2011, at 1:43 PM, Jeff Squyres wrote: > >> David -- >> >> If you can come up with a configure-esque test for detecting that we're on a >> system that has this bad condition, we can add an #if around the #include. >> >> For example, if you can write a short test that verifies that <net/if.h> is >> there, but it doesn't work, and further, if we're using the broken version >> of PGI on Mac OS X, then we can AC_DEFINE something to skip including that >> file in opal/util/if.h. >> >> >> >> On Mar 3, 2011, at 4:22 PM, Ralph Castain wrote: >> >>> 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 >>> >>> >>> _______________________________________________ >>> users mailing list >>> us...@open-mpi.org >>> http://www.open-mpi.org/mailman/listinfo.cgi/users >> >> >> -- >> Jeff Squyres >> jsquy...@cisco.com >> For corporate legal information go to: >> http://www.cisco.com/web/about/doing_business/legal/cri/ >> >> >> _______________________________________________ >> users mailing list >> us...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/users > > > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/