I believe I reported this before on a different mailing list, but will repeat it here. The PGI compilers rely on the Linux kernel for some things. We found that the ability of the PGI compilers to build OMPI, therefore, was highly dependent upon the specific Linux kernel on the machine.

For example, on one of our clusters, anything less than PGI 7.2-5 would not compile OMPI 1.3. The reason was that the Linux kernel on that machine no longer had a specific function required by OMPI 1.3, so the build system barfed. On other machines with an earlier kernel version, it built fine with PGI 7.1.

I can look up details next week on that particular error. My point here is to simply point out the dependency, so it is little surprise that someone might be able to build on one machine, and not another.

Ralph

On Mar 12, 2009, at 9:09 PM, Jeff Squyres wrote:

It's odd because PGI 7.0 and 7.1 compile OMPI just fine (don't know about PGI 7.2).


On Mar 12, 2009, at 7:09 PM, Mark Potts wrote:

All,
I don't know PGI's compilers, but is it possible that since "restrict" was supposedly introduced as a C99 feature that it is not supported
   by default by their C compiler?  This would explain the wording of
the error message which indicates interpretation of "restrict" as a
   variable name.

Perhaps, like gcc, there is a -std=c99 option for the PGI compiler?

        regards,

George Bosilca wrote:
> Apparently, the PGI compiler (version 8) doesn't recognize restrict as a > keyword in a function prototype if the associated argument is not named. > There is one obvious solution: remove the restrict keyword but I don't
> think it's the right one.
>
> Can you try to replace
>> typedef void (*ompi_op_base_3buff_handler_fn_1_0_0_t)(void *restrict, >> void *restrict, >> void *restrict,
>> int *,
>>                                                      struct
>> ompi_datatype_t **,
>>                                                      struct
>> ompi_op_base_module_1_0_0_t *);
>
> by typedef void (*ompi_op_base_3buff_handler_fn_1_0_0_t)(void *restrict
> in1,
>> void *restrict in2, >> void *restrict
>> out, int *,
>>                                                      struct
>> ompi_datatype_t **,
>>                                                      struct
>> ompi_op_base_module_1_0_0_t *);
>
> Thanks,
>   george.
>
> On Mar 11, 2009, at 15:52 , Mostyn Lewis wrote:
>
>> Compiling SVN r20757 with PGI 8.0-4 failed doing ompi_info with
>>
>> "../../../.././ompi/mca/op/op.h", line 264: error: duplicate parameter
>> name
>> void *restrict,
>>                                                              ^
>>
>> "../../../.././ompi/mca/op/op.h", line 265: error: duplicate parameter
>> name
>> void *restrict,
>> int *,
>>                                                              ^
>>
>> 2 errors detected in the compilation of
>> "../../../.././ompi/tools/ompi_info/components.cc".
>> make[2]: *** [components.o] Error 2
>> make[2]: Leaving directory
>> `/tmp/o/openmpi-1.4a1r20757_svn/build/ompi/tools/ompi_info'
>>
>> Code is:
>>
>> /*
>> * Typedef for 3-buffer (two input and one output) op functions.
>> */
>> typedef void (*ompi_op_base_3buff_handler_fn_1_0_0_t)(void *restrict, >> void *restrict, >> void *restrict,
>> int *,
>>                                                      struct
>> ompi_datatype_t **,
>>                                                      struct
>> ompi_op_base_module_1_0_0_t *);
>>
>> DM
>> _______________________________________________
>> 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

--
***********************************
>> Mark J. Potts, PhD
>>
>> HPC Applications Inc.
>> phone: 410-992-8360 Bus
>>        410-313-9318 Home
>>        443-418-4375 Cell
>> email: po...@hpcapplications.com
>>        po...@excray.com
***********************************
_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users


--
Jeff Squyres
Cisco Systems

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

Reply via email to