[krbdev.mit.edu #5693] Problems using Intel C compiler on trunk builds

Ezra Peisach via RT rt-comment at krbdev.mit.edu
Tue Aug 28 09:39:25 EDT 2007


There are several issues in using Intel's C compiler in building krb5.
The compiler is "interesting" in that it pretends to look like the GNU
compiler - by defining __GCC__ and other version specific defines. 
Therefore, for the source tree configuration, it believes it is working
with gcc...

Why would want to use icc instead of gcc? Well different compilers pick
up different problems - and help improve portability.

There are three issues (at least):
a) gssftp/ftp does not compile - this is a simple problem of ordering
inclusion of ftp_var.h and signal.h - in some source files it is one way, 
and others the reverse.  This creates a redefinition problem in the
signal handler macros we use.

b) While icc does know a number of gcc -W constructs - it does not know
all of them.  Instead of having a fatal error - it produces a warning.
This results in four warnings per file compiled... Annoying but not
fatal.

c) The thread detection is giving warnings during configuration - and
comparison on config.cache from icc and gcc build trees indicates that
there may be some problems in detecting reentrant functions and thread
support.

I have a fix for (a) but need to do some multiplatform compilation to
verify it does not break anything.



More information about the krb5-bugs mailing list