Subject: Re: cross compiling from Solaris x86 is busted .... again...
To: None <tech-toolchain@NetBSD.org>
From: Alan Barrett <apb@cequrux.com>
List: tech-toolchain
Date: 09/03/2006 20:45:24
On Sun, 03 Sep 2006, Garrett D'Amore wrote:
> > Cross compiling tools from Solaris x86 using
> > ./build.sh -T ${TOOLSDIR} -m i386 tools kernel=GENERIC
> > fails bootstrapping tools.
Did you ensure that a POSIX-compliant shell is the first in the PATH,
as suggested in comments in build.sh? For example, ensure that
/usr/xpg4/bin appears before /bin in the PATH.
You could also try something like
SHELL=/usr/xpg4/bin/sh \
HOST_SHELL=/usr/xpg4/bin/sh \
/usr/xpg4/bin/sh ./build.sh blah blah
> echo 'SYSTEM_HEADER_DIR="'"`echo
> /import/meteor/tools/SunOS-i386/lib/gcc/i386--n
> etbsdelf/4.1.2/../../../../i386--netbsdelf/sys-include | sed -e :a -e
> "s,[^/]*/\
> .\.\/,," -e ta`"'"' \
> >
> /import/meteor/tools/SunOS-i386/lib/gcc/i386--netbsdelf/4.1.2/install-
> tools/mkheaders.conf
> sed: command garbled: s,[
> /bin/sh: : cannot execute
> /bin/sh: /]*/../,, -e ta: not found
At this point in the build, it is using /bin/sh, not /usr/xpg4/bin/sh.
Is that because you didn't set your PATH to prefer /usr/xpg4/bin, or
because of a bug in the build process?
/bin/sh seems to think that "^" behaves like "|". There might also be
some weirdness related to nesting of "..." inside `...` inside "..." --
the relevant Makefile or script should probably be changed to use $(...)
instead of `...`.
--apb (Alan Barrett)