This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Question regarding compiling a toolchain for a Broadcom SB1

--- Kai Ruottu <> wrote:
>  So, Jonathan, if you need to get a knife (glibc)
>producing your own hammer (gcc), just ask someone to
>give that knife and produce your own hammer first
>that borrowed knife. And then produce your own knife
>using your self-made hammer and later the final
>with your self-made knife... After customizing your
>hammer and knife many times you soon forget how on
>earth you managed to get the first hammer and knife
>and what the heck, who even cares about that !

I agree with you completely. Ok, does anyone have a
MIPS64 binary of glibc that they could run me a copy
of? Actually, as you'll see later in my post, a copy
of binutils would be better, as that seems to be where
the MIPS board is suffering the most problems.

I -think- I need a chisel, as well, though. On
producing the bootstrap GCC cross-compiler, trying to
compile with it produces the error that it can't find
crti.o, crtn.o or crt1.o. IIRC, these are produced
when compiling GCC, but the GCC in CVS does not have
the source file for crt1.c for MIPS, does not compile
crti.c by default and the assembler choked on crtn.o

I do have old versions of these files on the native
MIPS64 environment, so it does depend a litte on
whether these files have changed significantly or not.

I can build a cross-assembler with no problems. That
part isn't a problem. The problem is that the compiler
and assembler on the MIPS board are broken and won't
compile a binutils tarball or a copy fresh from CVS.
(The installed linker is rejecting object files
produced by the installed assembler as invalid, and
the installed assembler is rejecting assembly files in
GCC as invalid.)

The approach I've been following is to say "Ok, the
tools on the board are compiling some things but not
others - it would be best to replace them with
something reliable. Commercial binaries seem to be all
ancient, so it looks as though I'll need to do SOME
rolling of my own, at least. If I can build a
functional cross-compiler, I can use that to build a
native compiler, which I can then move over and build
what I need - treat it as a blank system, since I have
no pre-installed code I can trust and no obvious
repositories I can use to grab binaries from."

I've been wanting to do a "roll-your-own" partly
because I'm a stubborn SOB, partly because I can then
tune it to the precise environment and partly because
if I can't build a toolchain because of
missing/uncompiled files, then there's a bug in the
code or a bug in the method, either of which is
important to know and fix.

(There's also a lot to do with the fact that I
actually enjoy building things from source when I can.
It's just a pain in the neck when either the
instructions are out of date OR there is unintended
behaviour. Oh, this sort of level of development will
never be on the same level as building an Airfix
model, but the parts should all be there and the glue
shouldn't run off with the table leg.)


Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]