Ian Lance Taylor writes:
> > This would seem to be the right answer, but unfortunately Autoconf is not
> > smart enough to detect marginal cross-compilation cases in all situations.
> > Someone had zlib installed in a location where gcc would find it (compiles
> > okay) but the run-time linker would not (does not run). This is not
> > detected when AC_PROG_CC runs, but only later on after you have checked
> > for the libraries.
>
> Hmmm. I would not describe that as a cross-compilation case at all.
> The build machine and the host machine are the same.
Only for small values of "same". ;-) Sameness is not defined by the names
being spelled identically or the physical coincidence of the hardware.
There are a million things you can do to a system that supposedly preserve
binary compatibility, such as installing vendor patches or changing a
setting in /etc. But if you run a test program is such a situation you're
testing the wrong system.
> I would describe that as a case where the compiler search path and the
> run time library search path are not the same.
The assumption is surely that the user would set LD_LIBRARY_PATH or
configure his linker before running the program. But nothing guarantees
that he'll actually set the search path to /usr/local/lib, which is what
gcc was searching in this situation.
> Clearly differences between search paths matter, but they are not the
> same as cross-compilation.
It's not the same as the classical Canadian Cross, but it's still cross
enough to concern me. ;-)
--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/