On Mon, 24 Oct 2005, Paul Eggert wrote:
Mikulas Patocka <[EMAIL PROTECTED]> writes:
The compilation gets a bit further with the patch, but it still
doesn't work --- this time it is problem of intel compiler --- it
can't extract its intercode from *.a files.
The Intel compiler mishandles static libraries? That sounds like
a real compatiblity issue all right.
That's lame. Intel C version 8 had switch -ipo-obj that causes it to
generate both intercode and legacy machinecode into *.o files --- with
this switch, coreutils can be compiled (however it's a bit suboptimal,
because it uses machinecode from *.a files, not intercode). Intel C 9
removed "-ipo-obj" switch, making it impossible to use Inter-procedural
optimizations in projects that pack object files into "*.a"
You can modify libtool so that when it is creating static library and
compiler is "icc" or "icpc" (or "some/path/icc" or "some/path/icpc"),
it passes it -no-ipo switch. (dynamic libraries work fine with -ipo).
But coreutils does not use libtool, no? So this wouldn't fix
the problem.
I see.
If you want to solve it in some way (detect intel compiler and pass it
-no-ipo when creating object files that will be packed into "*.a"), you
can, if you don't want, you don't have to.
Perhaps this issue would need to be taken up with the libtool folks,
but that should go to bug-libtool.
Mikulas
_______________________________________________
Bug-coreutils mailing list
Bug-coreutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-coreutils