Steven G. Johnson schrieb:
Hi, I noticed a failure of the "checking whether we are cross compiling"
on BlueGene/L, where it erroneously decides that it is *not*
cross-compiling when in fact it *is*. I'm willing to submit a patch for
this (my copyright assignment is on file), but first I wanted to get
some feedback from you guys about the problem and solution.
BACKGROUND:
As you may or may not know, some of the major supercomputers these days
(Cray XT3 and IBM BlueGene) require cross-compiling: the front-ends run
GNU/Linux, but the actual compute nodes run some half-baked
pseudo-POSIX-ish minimal OS, so every program that you want to run has
to be cross-compiled. (I'm not happy with this situation, but dealing
with quirky, exotic system software has long been a fact of life in
supercomputing.) Hence, cross-compiling to quirky systems has suddenly
become common in scientific computing, which is unfortunate since most
scientific users are unfamiliar with cross-compiling in theory or in
practice.
PROBLEM:
Anyway, I noticed on BlueGene/L that when I specify a
--host=powerpc64-ibm flag and also give it CC manually (none of these
supercomputers use the GNU naming conventions for their
cross-compilers), it still says:
checking whether we are cross compiling... no
Hi Steven,
if I just set --host without specifying --build cross_compiling is set
to "maybe" and I get following warning:
configure: WARNING: If you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used.
Therefore I usually specify --host *and* --build if I want to cross
compile. If $host != $build, configure sets cross_compiling to yes and
everything works like expected, at least on Blue Gene/P.
Note that we are working on some heuristics to detect supercomputer
platforms like Blue Gene, Cray, NEC etc. that require cross compilation.
This detection will be available as a macro soon and render it
unnecessary that the user specifies --host and --build on the supported
platforms.
Cheers,
Christian
_______________________________________________
Autoconf mailing list
Autoconf@xxxxxxx
http://lists.gnu.org/mailman/listinfo/autoconf