Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Jul 2011 07:48:05 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        freebsd-hackers@freebsd.org
Cc:        "Julian H. Stacey" <jhs@berklix.com>, hackers@freebsd.org, Dan Nelson <dnelson@allantgroup.com>
Subject:   Re: Freebsd-7.4 + std gcc 4.2.1 fails to honour -march=i586
Message-ID:  <201107200748.05786.jhb@freebsd.org>
In-Reply-To: <201107201133.p6KBXQTr006861@fire.js.berklix.net>
References:  <201107201133.p6KBXQTr006861@fire.js.berklix.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday, July 20, 2011 7:33:26 am Julian H. Stacey wrote:
> What should FreeBSD do ? 
> 	Add a comment to man gcc ... that -march=i586 is not
> 	enough, & feed the comment back to gcc project & see how
> 	they want to handle it ?

No, this is not a GCC bug.  If you want to use a single build machine that 
will compile programs for other machines on a network to use, it must use the 
lowest common denominator for its CPUTYPE in /etc/make.conf.

The out-of-the-box crt files from a FreeBSD install will work fine on a 486
and above, so can only get yourself into this quandry by building a new world 
with a CPUTYPE (or similar CFLAGS) setting in /etc/make.conf that violates 
this rule.

You can fix your machine by fixing the CPUTYPE in your build machine and 
building and installing a new world (do use NO_CLEAN=yes for your build, do a 
full build).  You will also want to rebuild any other binaries on this machine 
that you share with other machines.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201107200748.05786.jhb>