Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Apr 2004 10:13:56 -0400
From:      Jason Lixfeld <jason+lists.freebsd@lixfeld.ca>
To:        "J.D. Bronson" <jbronson@wixb.com>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: GCC3.4
Message-ID:  <9DEE44BD-9AB0-11D8-94AF-000A95989E4A@lixfeld.ca>
In-Reply-To: <6.1.0.6.2.20040430085350.02465dd0@localhost>
References:  <C318E8B3-9A6D-11D8-94AF-000A95989E4A@lixfeld.ca> <20040430070958.GA76706@xor.obsecurity.org> <66231CBC-9AAD-11D8-94AF-000A95989E4A@lixfeld.ca> <6.1.0.6.2.20040430085350.02465dd0@localhost>

next in thread | previous in thread | raw e-mail | index | archive | help
On Apr 30, 2004, at 9:55 AM, J.D. Bronson wrote:

> At 08:50 AM 04/30/2004, you wrote:
>> On Apr 30, 2004, at 3:09 AM, Kris Kennaway wrote:
>>
>>> On Fri, Apr 30, 2004 at 02:15:22AM -0400, Jason Lixfeld wrote:
>>>> I've just installed gcc3.4 to, among other things take advantange of
>>>> the -march=opteron options.  I'm in quite a bit of a conundrum here
>>>> because I've installed, changed the order in $PATH to look in
>>>> /usr/local/bin before /usr/bin for gcc, cc etc but when I run a make
>>>> buildworld it fails saying it doen't recognize the -march=opterion
>>>> option.  This means that the old system version of gcc is still 
>>>> being
>>>> referenced somehow, even though I've set the paths:
>>>
>>> This is intentional (the system compiler is rebuilt as part of the
>>> buildworld process, and thereafter used explicitly).
>>>
>>> You can't compile world with a compiler that is not the system
>>> compiler, because it would fail with errors.  If you must have a 
>>> world
>>> compiled with gcc 3.x, you'll have to use the FreeBSD 5.x branch,
>>> which uses gcc 3.x as the system compiler.
>>
>> This is a 5.2.1 system but it uses 3.3.3, not 3.4.  so I guess I'll 
>> have to wait then until 3.4 is the system compiler.
>>
>>> Kris
>
> One thing I do on 5.2.1 is compile gcc 3.4 but use
> --program-suffix=3

I removed the program suffix all together.  I was using the default one 
and making symlinks to gcc in /usr/local/bin because everything uses 
gcc to compile anyway.  I'm going to go on the assumption that based on 
Kris' response, the programs that need to use the system gcc will be 
smart enough to hard code the path.

How do you do tell things to use gcc3 instead of gcc?  export a 
variable before make which tells make which compiler to use?

> This way, I have gcc for the kernal, but gcc3 for access to gcc3.4 
> without
> clobbering the freebsd version...

My big problem is that I need to remember to comment out the options in 
make.conf if I'm going to be doing something that needs the system 
compiler.

> -JDB



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9DEE44BD-9AB0-11D8-94AF-000A95989E4A>