makefile target
Simon 'corecode' Schubert
corecode at fs.ei.tum.de
Tue Aug 21 03:26:06 PDT 2007
[redirecting to kernel@]
km b wrote:
Does anyone know which Makefile target builds and installs statically
linked binutils,gcc and other build tools in the /usr/bin directory?
I am asking this question because the TARGET_ARCH=amd64 generates the
right sort of buildtools in /usr/libexec/binutils{215,217} directory
i.e. (x86_64) . But in the /usr/bin directory it's still i386 format.
The tool you're looking is called objformat. This is a proxy which selects the compiler and binutils depending on the setting of environment variables. It is very likely however that you don't want to install the TARGET_ARCH=amd64 binaries in the common location, as this will render your system unable to build host tools and thus can't bootstrap itself again.
If you want to play with amd64 builds, I suggest you run a buildworld with TARGET_ARCH=amd64, which will set up a complete cross-compiling environment for amd64, although prefixed.
If you anyways want to use objformat, you could install the amd64-cross-compilers in e.g. /usr/libexec/gcc41_amd64 and set CCVER=gcc41_amd64. Alternatively you could install gcc and binutils to a completely different prefix and set OBJFORMAT_PREFIX. Keep in mind that the crosscompiler needs a different set of headers, so you'll likely need to change the search prefix for the headers in the compiler as well. All of this is taken care in the build/crossworld.
Also note that for proper compilation success, you'll need the build patches by Noah Yan.
cheers
simon
--
Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon /"\
Work - Mac +++ space for low â¬â¬â¬ NOW!1 +++ Campaign \ /
Party Enjoy Relax | http://dragonflybsd.org Against HTML \
Dude 2c 2 the max ! http://golden-apple.biz Mail + News / \
More information about the Users
mailing list