From owner-freebsd-amd64@FreeBSD.ORG Thu Nov 25 23:07:59 2004 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 24BBD16A4CE for ; Thu, 25 Nov 2004 23:07:59 +0000 (GMT) Received: from pandora.cs.kun.nl (pandora.cs.kun.nl [131.174.33.4]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9250143D45 for ; Thu, 25 Nov 2004 23:07:58 +0000 (GMT) (envelope-from groot@kde.org) Received: from odin.cs.kun.nl [131.174.33.33] (helo=localhost) by pandora.cs.kun.nl (8.12.10/4.23) with ESMTP id iAPN7ptw014955; Fri, 26 Nov 2004 00:07:51 +0100 (MET) From: groot@kde.org To: "Conrad J. Sabatier" Date: Fri, 26 Nov 2004 00:07:56 +0100 User-Agent: KMail/1.7.50 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200411260007.57587.groot@kde.org> cc: freebsd-amd64@freebsd.org Subject: Cross-compiling amd64 on x86 X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Nov 2004 23:07:59 -0000 Unfortunately, buying a second amd64 system is faster than figuring out how to cross compile (and less aggravating, too), so that's what I've done. I followed a number of links around (http://www.kegel.com/crosstool/), but there is nothing really comprehensive nor anything simple and straightforward. I did hack the ports Makefile a little to allow me to set the target architecture, and indeed, it does build _a_ gcc for amd64 then, but the bootstrapping process then tries to use that amd64 compiler to build itself - on x86, which fails. So there's two issues: - getting binutils for amd64 built on x86. This is not addressed by messing with the existing ports. - getting gcc built and doing only the first-stage of the bootstrap. The latter should be fairly simple for someone who understands the build process for gcc; the port itself provides a useful invocation of configure that you would need to modify. binutils is another can of worm(let)s, but that URL above suggests that this might even happen automatically if you unpack them into the gcc source tree.