From owner-freebsd-bugs Wed Oct 25 14:51:25 2000 Delivered-To: freebsd-bugs@freebsd.org Received: from warrior-outbound.servers.plus.net (unknown [212.159.14.227]) by hub.freebsd.org (Postfix) with SMTP id 90DBB37B4C5 for ; Wed, 25 Oct 2000 14:51:21 -0700 (PDT) Received: (qmail 3360 invoked from network); 25 Oct 2000 21:51:08 -0000 Received: from unknown (HELO dino.mithy.org) (212.159.30.31) by warrior with SMTP; 25 Oct 2000 21:51:08 -0000 Received: from celery.mithy.org (celery [10.0.0.3]) by dino.mithy.org (8.11.1/8.11.1) with ESMTP id e9PLpDx00216; Wed, 25 Oct 2000 22:51:14 +0100 (BST) (envelope-from keith@dino.mithy.org) Received: (from keith@localhost) by celery.mithy.org (8.11.1/8.11.1) id e9PLpXR00948; Wed, 25 Oct 2000 22:51:33 +0100 (BST) (envelope-from keith) Date: Wed, 25 Oct 2000 22:51:33 +0100 From: Keith Jones To: Marcel Moolenaar Cc: johan@freebsd.org, freebsd-bugs@freebsd.org Subject: Re: bin/22256: [RARE] cross-compiled static bins in /usr/obj/usr/src/i386 can cause Signal 4 during make installworld Message-ID: <20001025225133.B865@celery.mithy.org> References: <200010251831.LAA45023@freefall.freebsd.org> <39F734C3.B87DFAE7@cup.hp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <39F734C3.B87DFAE7@cup.hp.com>; from marcel@cup.hp.com on Wed, Oct 25, 2000 at 03:30:11PM -0400 Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Hi again, Apologies for the double post, I just had a further thought on this, based on the fact that 'strip' is required by both the build and install processes. Would it be possible to add an extra stage to the buildworld process whereby 'strip', and any likewise affected binaries that are currently probably being copied into /tmp/install.XXX during the install process itself, are recompiled _specifically for the target system_, but installed in an entirely different directory (e.g. /usr/obj/tmp.install)? If this path is then included in the install process _only_, voila! no more Signal 4 errors. _And_ you might even be able to cross-compile between Alpha and IA-32. Kind regards Keith On Wed, Oct 25, 2000 at 03:30:11PM -0400, Marcel Moolenaar wrote: > johan@FreeBSD.org wrote: > > > > Synopsis: [RARE] cross-compiled static bins in /usr/obj/usr/src/i386 can cause Signal 4 during make installworld > > > > Responsible-Changed-From-To: freebsd-bugs->marcel > > Responsible-Changed-By: johan > > Responsible-Changed-When: Wed Oct 25 11:29:58 PDT 2000 > > Responsible-Changed-Why: > > Marcel, can you have a quick look at this and maybe add 'strip' > > to the copied programs in installworld. > > > > http://www.freebsd.org/cgi/query-pr.cgi?pr=22256 > > There's no bug in the build process that I know of. The tools in > /usr/obj that are specifically compiled to run on the build machine need > to be linked against the libraries in /usr/lib. In this case the build > machine is incompatible with the install machine, simply because the > binaries and libraries were optimized for the build machine and by that > unusable on the install machine. This is just as bad as building on > Alpha and installing on IA-32. > > To make the build process a bit more resistant, we can force bootstrap, > build and cross tools to be dynamicly linked instead of staticly linked. > > We should not add strip to installworld. Think about what would happen > if we did a source upgrade on FreeBSD 2.2.5 and basicly install ELF over > aout. We would be using an aout strip on ELF files... > > -- > Marcel Moolenaar > mail: marcel@cup.hp.com / marcel@FreeBSD.org > tel: (408) 447-4222 > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message