remizero wrote:
I have to build two libgcc?
Yes, but I think you can use the multilib system to do it. The documentation for that is
here and a guide for setting it up is
here.
remizero wrote:
If I have to do this, then I have to build two gcc?
If you use multilib, you only need one GCC. Otherwise, you'll have to build two.
remizero wrote:
If this is so, do I have to build two binutils?
No.
remizero wrote:
-mcmodel=kernel, as its name implies is used for kernel's compilation?
It's used for higher-half kernels, where all code and statically-allocated data is in the highest 2GB of the virtual address space. If your kernel is not located there, you must use a different memory model.
remizero wrote:
-mcmodel=large is used for compilations of user mode applications?
It can be, but it's only really useful if you need more than 2GB of address space for your code and static data. The generated code is slightly less efficient, too. The default -mcmodel=small works best in most cases.
remizero wrote:
in both cases they are used to make compilations for different objective platforms. Right?
I don't understand the question. What is an "objective platform"?