ports/130715: New Port:devel/binutils-2.19
Pegasus Mc Cleaft
ken at mthelicon.com
Wed Jan 21 05:40:03 UTC 2009
The following reply was made to PR ports/130715; it has been noted by GNATS.
From: Pegasus Mc Cleaft <ken at mthelicon.com>
To: Alexander Best <alexbestms at math.uni-muenster.de>
Cc: bug-followup at freebsd.org
Subject: Re: ports/130715: New Port:devel/binutils-2.19
Date: Wed, 21 Jan 2009 05:32:39 +0000
On Tuesday 20 January 2009 21:53:56 Alexander Best wrote:
> compiling and installing the port works fine for me.
Firstly, thanks for testing the port. I really appreciate it.
> the only problem i'm having is that i can't convince gcc to use the updated
> version of `as` (gas). gcc seems to be using /usr/bin as a hardcoded path
> to look for as `as`. only if gcc doesn't find the executable in that
> directory it looks for it in the places specified in $PATH.
<snip>
> i don't know if this is just the case with `as` or with all the binutils
> binaries. the only solution i've found so far is to rename /usr/bin/as to
> something else so gcc cannot find it and searches for `as` in $PATH.
If you are using the base compiler, this is probably normal. During the
./configure of the compiler, it either searches for or is told where to find
ar, as, ld, etc.. You can override this by setting the appropriate environment
variables either in your environment or in the /etc/make.conf:
AR=/usr/local/bin/ar, etc. To be honest, using the new binutils with the base
compiler really wont do very much for you, its useful if you also upgrade your
compiler (to take advantage of processor features that the base tools are not
aware of yet, IE: SSE4)
What you might consider is building /usr/ports/lang/gcc43. When this port
configures, it will find the new tools and use them by default.
The above is the path I took, and in addition, I added the following to my
/etc/make.conf to use it by default:
<in /etc/make.conf>
#CFLAGS= -O2 -fno-strict-aliasing -pipe -s
#CXXFLAGS+= -fconserve-space
CFLAGS= -march=native -O2 -fno-strict-aliasing -pipe -s
CXXFLAGS+= -fconserve-space
CC=gcc43
CXX=g++43
NO_CPU_CFLAGS= # Don't add -march=<cpu> to CFLAGS automatically
NO_CPU_COPTFLAGS= # Don't add -march=<cpu> to COPTFLAGS automatically
Now I comment out the first block when I am compiling from the ports tree,
and comment out the second block (and uncomment the first) when compiling the
world and kernel. Just be aware that using the later gcc will break many of
the ports due to gcc's Header dependency cleanup. So, if you find something
that is broken, just switch back to the first block and try again.
~Peg
More information about the freebsd-ports-bugs
mailing list