John Taylor wrote: > I'm trying to build coreutils-7.4 with a cross-compilator (gcc-4.4.1) > that runs on i686-unknown-linux-gnu and produces code for > x86_64-unknown-linux-gnu. When building coreutils, I get the following > error message: > > ../../coreutils-7.4/lib/rename.c:33:21: error: windows.h: No such file > or directory ...
That is an unfortunate consequence of the fact that the rename module must perform a so-called "run" test to determine whether it must work around certain rename bugs. When cross-compiling, it assumes the worst. However, in your case, the m4 macro could obviously do better, knowing the target is linux/gnu-based. A patch would be welcome. > I found that I can fix this problem by adding > gl_cv_func_rename_trailing_slash_bug=no to the configure arguments > list. Is this the normal and recommended way to proceed? Are we in > front of a bug, instead? You've done the right thing. Whenever you build using a cross-compiler, and for which an executable created by that compiler cannot be run on the host, you should manually seed the configure run with the ac_cv_* and gl_cv_* environment settings (cache variables) corresponding to those tests, so that the configure "run-tests" are not run at all. Since the configure script cannot determine whether your target system has a bug or feature, you must tell it via those cache variable settings.
