Hi,
Doesn't icc have its own set of substitute header files?
On my installation (icc version 7.0) it picks up header files from
<baseinstalldirectory>/compiler70/ia32/substitute_headers/...
<baseinstalldirectory>/compiler70/ia32/include/..
icc's sys/types.h looks identical except for the following
> From sys/types.h:
> /* These types are defined by the ISO C99 header <inttypes.h>. */
> # ifndef __int8_t_defined
> # define __int8_t_defined
> typedef char int8_t;
> typedef short int int16_t;
> typedef int int32_t;
> # if defined(__GNUC__) || defined (__ICC) || defined (__ECC) <-- changes
> __extension__ typedef long long int int64_t;
> # endif
> # endif
So it should be able to bring in the typedef for int64_t and uint64_t..
if we don't change the include directory order! (I am hoping icc 8.0
will also have roughly the same layout of header files etc...)
i.e. icc -I /usr/include will cause this compilation error, I think.
Try compiling the attached program with and without the above flags with
icc and see if it errors out.
My guess is that this error should go away if you can remove this
flag ("-I /usr/include") from the build options for ROMIO...
Thanks,
Murali
>
>
> On Mar 15, 2006, at 4:34 PM, Pete Wyckoff wrote:
>
> > [EMAIL PROTECTED] wrote on Wed, 15 Mar 2006 16:13 -0600:
> >> On Wed, Mar 15, 2006 at 04:02:45PM -0600, Ti Leggett wrote:
> >>> I'll add to it that the exact same thing happens on ia64 as well.
> >>
> >> int64_t is a c99 thing, which, being 2006, we didn't think was that
> >> onerous a requirement!
> >>
> >> Is there a special option for the intel compiler so that it will like
> >> c99 constructs? The ICC on jazz says the flag '-std=c99' does the
> >> trick. You might also try -c99 ?
> >>
> >> Let me know if any of that worked and i'll add it to the faq.
> >
> > That's funny because they're right there in glibc's
> > /usr/include/stdint.h but also in sys/types.h, C99 or no.
> > Maybe because adio.h picks up sys/types.h first, and it
> > conditionalizes int64_t on some glibc/gnuc defines. If
> > you can run "icc ... -E ad_fstype.c > ad_fstype.i" instead
> > of "icc ... -c ad_fstype.c", you can figure out why it's
> > skipping those int64_t typedefs.
> >
> > -- Pete
> >
>
> _______________________________________________
> Pvfs2-developers mailing list
> [email protected]
> http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers
>
>#include <stdio.h>
#include <sys/types.h>
int main(void)
{
int64_t a;
return 0;
}
_______________________________________________
Pvfs2-developers mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers