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      [EMAIL PROTECTED]       http://yi.org/peter-e/

Reply via email to