Date: Wed, 6 Jun 2001 09:23:27 -0700 From: "David O'Brien" <obrien@freebsd.org> To: Chris Casey <chriss@phys.ksu.edu> Cc: alpha@freebsd.org Subject: Re: ccc Message-ID: <20010606092327.C96129@dragon.nuxi.com> In-Reply-To: <Pine.SOL.3.96L.1010606104236.537E-100000@schottky.phys.ksu.edu>; from chriss@phys.ksu.edu on Wed, Jun 06, 2001 at 10:46:59AM -0500 References: <20010605170010.A95616@dragon.nuxi.com> <Pine.SOL.3.96L.1010606104236.537E-100000@schottky.phys.ksu.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
[ freebsd-alpha added as this may be of interest to others ] On Wed, Jun 06, 2001 at 10:46:59AM -0500, Chris Casey wrote: > I cleaned everything out, installed the ccc port which worked fine, then > installed linux_devtools and it cought fire finding the includes etc in > /compat/linux/. Removing the linux_devtools returns ccc to sanity. If you > have time can you give me a overview of what the ccc port does to make it > produce native binaries? I'm a bit tangled up in this mess. Thanks Mainly I replaced the use of Linux cpp, gas and ld with our own. The ELF file format is luckly quite standard and both Linux and FreeBSD follow the ELF/SVR4 ABI suffiently close that the assembly output from `ccc' could be fed into our assembler and linker which would DTRT and use FreeBSD syscalls and ABI. Beyond that, Drew and I tweaked some headers, and other minor stuff. In the compaq-cc port's Makefile, you'll see that I moved the included AlphaLinux cpp and ld off to the side, and put a symlinks in place to use the FreeBDS versions of these tools (as was already pointing at /usr/bin/as). Since `ccc' is a Linux binary, /compat/linux/{bin,usr/bin} is searched first, before any FreeBSD paths. So either `ccc' is somehow finding the `ld' or `cpp' in the [Linux] path, or there is a another tool `ccc' uses that I need to replace(symlink) with the FreeBSD version. BTW, if anyone has time to play with this, I would love for the port to use PREFIX rather than install into /usr/lib. -- -- David (obrien@FreeBSD.org) To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010606092327.C96129>