From owner-freebsd-questions@FreeBSD.ORG Mon Aug 31 17:56:42 2009 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8C846106566B for ; Mon, 31 Aug 2009 17:56:42 +0000 (UTC) (envelope-from freebsd-questions-local@be-well.ilk.org) Received: from mail1.sea5.speakeasy.net (mail1.sea5.speakeasy.net [69.17.117.3]) by mx1.freebsd.org (Postfix) with ESMTP id 654CB8FC31 for ; Mon, 31 Aug 2009 17:56:42 +0000 (UTC) Received: (qmail 14856 invoked from network); 31 Aug 2009 17:56:41 -0000 Received: from dsl092-078-145.bos1.dsl.speakeasy.net (HELO be-well.ilk.org) ([66.92.78.145]) (envelope-sender ) by mail1.sea5.speakeasy.net (qmail-ldap-1.03) with SMTP for ; 31 Aug 2009 17:56:41 -0000 Received: by be-well.ilk.org (Postfix, from userid 1147) id 7BCD750867; Mon, 31 Aug 2009 13:56:40 -0400 (EDT) To: Jim , freebsd-questions@freebsd.org References: <80f4f2b20908310628p5129acc1qdb98311136bb716e@mail.gmail.com> <20090831163334.GA18945@slackbox.xs4all.nl> From: Lowell Gilbert Date: Mon, 31 Aug 2009 13:56:40 -0400 In-Reply-To: <20090831163334.GA18945@slackbox.xs4all.nl> (Roland Smith's message of "Mon\, 31 Aug 2009 18\:33\:35 +0200") Message-ID: <44zl9f27fr.fsf@be-well.ilk.org> User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.3 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Subject: Re: 32 bit ports on an AMD64 system X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Jim , freebsd-questions@freebsd.org List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Aug 2009 17:56:42 -0000 Roland Smith writes: > On Mon, Aug 31, 2009 at 09:28:44AM -0400, Jim wrote: >> I want to compile some 32 bit ports on an AMD64 system. I know the GCC >> has to receive the -m32 flag to compile the ports as 32 bit, but I >> also want to change the install directory with 32 bit ports, I was >> wondering which would be the most appropriate root given unix themes >> and standard FreeBSD directory structure. >> >> /usr/local/[same-as-before]-32 (i.e. [...]/bin32, [...]/lib32, >> [...]/libexec32, etc) > > The one above sounds most logical. The base system puts 32 bit libraries in > /usr/lib32. > >> Also, would I be able to pass the appropriate flags through port >> upgrade (or use environmental variables), or would I have to make >> duplicates of the port directories and modify the makefiles? > > Currently the ports system is not set up to handle multiple versions of the > same port, AFAIK. You could ask on the ports list. You'd need a separate > /var/db/pkg32 to store information about installed 32-bit ports. And > /var/db/ports32 for options for 32-bit ports. You would also need changed port > makefiles (different /ve/db paths, -m32 flag etc.) for this to work. It should > be possible, but I don't think anybody has volunteered to do the work yet. :-) > > The consensus seems to be that if you _really_ need 32-bit apps that badly, > you should use the i386 architecture. A lot of people run amd64 because the > hardware supports it, not because they need* it. > > (* 'need' in this case means that you are regularly running out of address > space on i386.) Also note that it is possible to have an i386 port-building jail on an amd64 system. -- Lowell Gilbert, embedded/networking software engineer, Boston area http://be-well.ilk.org/~lowell/