Re: [ROOT] icc fails to compile root 3.05/05

From: Alexandr Malusek (Alexandr.Malusek@imv.liu.se)
Date: Tue Jun 03 2003 - 15:44:03 MEST


Hi,

>   I run with the same patch level of the icc compiler on RH 7.2 and
> RH7.3 and I've not this problem.

There are some problems with icc (e.g. Version 7.1 Build 20030521Z)
and glibc-2.3.2-6 header files on SuSE-8.2.  I've finally managed to
compile root 3.05/05 with icc there but the workarounds were
nonstandard so I also contacted Intel to investigate the problem.

Examples which demonstrate the problem follows:

************************************************************************
*** Example 1

malusek@photon:~/test/icc> cat t1.cc
// #include <time.h>  // fixes the problem with icc
#include <sys/stat.h>

int main()
{
    return 0;
}

malusek@photon:~/test/icc> gcc t1.cc  # gcc OK
malusek@photon:~/test/icc> icc t1.cc  # icc fails
/usr/include/bits/stat.h(70): error: incomplete type is not allowed
      struct timespec st_atim;          /* Time of last access.  */
                      ^

/usr/include/bits/stat.h(71): error: incomplete type is not allowed
      struct timespec st_mtim;          /* Time of last modification.  */
                      ^

/usr/include/bits/stat.h(72): error: incomplete type is not allowed
      struct timespec st_ctim;          /* Time of last status change.  */
                      ^

compilation aborted for t1.cc (code 2)

************************************************************************
*** Example 2  (setresuid is nonstandard so it may not be a problem)

malusek@photon:~/test/icc> cat t2.cc
#include <unistd.h>

int main()
{
    setresuid(0, 0, 0);
    return 0;
}
malusek@photon:~/test/icc> gcc -c t2.cc  # gcc OK
malusek@photon:~/test/icc> icc -c t2.cc  # icc fails
t2.cc(5): error: identifier "setresuid" is undefined
      setresuid(0, 0, 0);
      ^

compilation aborted for t2.cc (code 2)

************************************************************************
*** Example 3

malusek@photon:~/test/icc> cat t3.cc
// #include "/usr/include/bits/types.h" // fixes the problem with icc
#include <sys/statfs.h>

int main()
{
    return 0;
}
malusek@photon:~/test/icc> gcc t3.cc  # gcc OK
malusek@photon:~/test/icc> icc t3.cc  # icc fails
/usr/include/bits/statfs.h(27): error: identifier "__SWORD_TYPE" is undefined
      __SWORD_TYPE f_type;
      ^

/usr/include/bits/statfs.h(28): error: identifier "__SWORD_TYPE" is undefined
      __SWORD_TYPE f_bsize;
      ^

/usr/include/bits/statfs.h(43): error: identifier "__SWORD_TYPE" is undefined
      __SWORD_TYPE f_namelen;
      ^

/usr/include/bits/statfs.h(44): error: identifier "__SWORD_TYPE" is undefined
      __SWORD_TYPE f_spare[6];
      ^

compilation aborted for t3.cc (code 2)

--
Alexandr



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:12 MET