GCC Cross Compiler Updates Ready

All about the OSDev Wiki. Discussions about the organization and general structure of articles and how to use the wiki. Request changes here if you don't know how to use the wiki.
Post Reply
User avatar
Chandra
Member
Member
Posts: 487
Joined: Sat Jul 17, 2010 12:45 am

GCC Cross Compiler Updates Ready

Post by Chandra »

Hi,

I've been cross compiling several versions of gcc for several months and finally, I think I've an update ready. But before I get myself 'wiki rights' and start updating the superb 'Cross Compiler Tutorials', I think I should make some discussions here.

First things first:
It seems as if some of the target formats have been dropped from the newer releases. To force support of these output formats, --enable-obsolete switch is required. Moreover, some of the Cross Compiled Binaries also supports 'Cross Linking' although being targeted for a specific output format. One major issue I found, was with the coff target. And the issue is - LD produces the Undefined references to ... error when trying to link with the coff output file from NASM. It seems as if NASM and LD are not willing to accept each others coff output. One of the source states that:
There are two variants of the 32-bit COFF format: one used by Microsoft Win32 tools, and one by the rest of the world.
COFF is also in use in some projects, although it lacks native support for features such as dynamic linking.
I am not sure if the reason behind unresolved symbols, is one of these. So, before we can continue further discussions, I am willing to find the answer.

Thank you.
Programming is not about using a language to solve a problem, it's about using logic to find a solution !
User avatar
Chandra
Member
Member
Posts: 487
Joined: Sat Jul 17, 2010 12:45 am

Re: GCC Cross Compiler Updates Ready

Post by Chandra »

And of course, here's a quick listing of the updates I've prepared.

1. Leaving your old compiler
a. Upgrading Cygwin
b. Shifting from DJGPP
2. Targeting multiple architectures
3. Some of the issues with Cross Compiling
4. Setting up the build-type
5. Setting up the target-type
5. Setting up multiple target-type
6. Setting up the Cross Compiling environment
7. The rest continues as the original article
Programming is not about using a language to solve a problem, it's about using logic to find a solution !
Post Reply