Re: Building a cross-compiler for a Raspberry Pi

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 03/15/2016 10:51 AM, YuGiOhJCJ Mailing-List wrote:
> These are the steps I follow in order to build a cross-compiler:
> 1) I build binutils for the target
> 2) I install the headers from a library (that is specific)
> 3) I build a minimal gcc for the target (only C language supported)
> 4) I build a library for the target (that is specific)
> 5) I build a full gcc for the target (C and C++ languages supported)
> 
> For the step 2), it must be skipped for some targets:
> * If the target is avr, it must be skipped
> * If the target is i686-w64-mingw32, it must be done
> 
> For the step 2) and 4), the library I use depends on the target:
> * If the target is avr, I use avr-libc [1]
> * If the target is i686-w64-mingw32, I use mingw-w64 [2]
> 
> This method works fine for avr and i686-w64-mingw32, so I am
> wondering why it does not work for my armv6l-unknown-linux-gnueabihf
> machine too.

Because you need the target libraries.  It's not just libc itelf, but
also ld.so and possibly some others such as libdl.so.

Each GNU/Linux system has its dynamic libraries, and you should make
sure that you are building GCC against the correct versions installed
on your target system.

> I guess it is because I don't know which specific library I can use
> for the steps 2) and 4).
> Maybe newlib [3] is what I am looking for.
> 
> Can you tell me if my method is correct and if newlib could be what
> I am looking for?

Newlib is wrong for any GNU/Linux system.  You want an appropriately-
configured glibc.

It's my turn to ask a question.  Why do you want to make this so
difficult, when you could simply build a cross compiler and be
finished already?

Andrew.



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux