Mark Whitis's Website Home Page Linux Book: Linux Programming Unleashed My Resume Genealogical Data Contact Info Security About

Cross compiling to other operating systems from linux (or un*x) using gcc

Compiled by Mark Whitis (whitis@freelabs.com).

Why this page?

I am starting this page to collect and disseminate information related primarly to using linux (and un*x in general) as a cross development platform for other operating systems. I am hoping that other people with similar interests will help me collect some of this information.

Red Hat RPMs are particularly encouraged. So are installation scripts which detail how to add a particular cross compiling ability to a pre installed gcc installation. Here are some suggestions for better installation scripts:

Links to emulators are also encouraged.

Links sorted by target OS:

General purpose (Deskhog/laptop) Operating Systems

WinCE (Windows CE)

MSDOS - 386/486/586/686, Pentium (P5), Pentium Pro (P6), and compatibles.

DJ Delorie has ported gcc to MSDOS on 386 and higher processors. Some information on how to cross compile from a Linux or unix system is availible at:

MSDOS - 88/86/286

Microsoft Windows 3.1

Microsoft Windows 95

Cygnus GNU-Win32 is a port of gcc to the windows NT and Windows 95 platform.

Microsoft Windows NT

Macintosh OS - Power PC

Macintosh OS - 68K

OS/2

EMX is Eberhard Mattes's OS/2 port of the GNU development environment. Note that this runs under OS/2. Most of the pieces you need to make a cross compiler are probably there.

GCC can already cross compile from one unix platform to another (with some hiccups). GCC can already be used for many embedded system applications on many different target platforms if you do not need OS functions or C libraries.

Amiga

"Geek Gadgets provides virtually all the tools you need to get started programming on these platforms, including C, C++, Fortran, and ADA compilers, assembler, linker, EMACS editor, "make", source code control systems (rcs & cvs), text and file utilities, GNU debugger, text formatters (groff & TeX) and many more. It also provides a port of the X Window System (X11 R6.3). Have a look at the list of available packages for details. "

Handheld/pocket computers, palmtops, HPC's, and PDA's

MSDOS + HPLX extensions (for HP200LX, HP100LX, HP95LX platforms)

PalmOS (for USR Pilot)

There is a port of GCC for the pilot

Newton OS

MagicCAP

8 and 16 bit microprocessors

6502 Family

1802 Family

Cosmac Elf page has a TinyELF emulator for PalmOS which emulates the Cosmac ELF and ELF II, complete with bitmapped graphics. Presumably, you could run this under Xcopilot (even with the overhead of double emulation, it will probably be as fast or faster than the old 1802 machines).

Microcontrollers

PIC The GNUPIC page lists development tools for PIC chips.

Game machines

Atari ST

It appears that there is a port of GCC to the atari ST platform.

Misc.

Alternate standard C libraries

I am also interested in alternative standard C libraries for gcc (for linux and other platforms) which are not tainted by the GPL. I have not gotten around to writing a page devoted to why I despise the GPL even though I am very much in favor of distributing source code (and have advocated the latter at considerable personal expense). In the mean time, before you release software under GPL, remember that your decision to do so is IRREVERSIBLE. You can always release software under BSD style or Artistic License style now and change to GPL if you really want to later after you have studied the fine print. I much prefer BSD style copyrights or Larry Wall's Artistic License.

Ports of gcc which run under other platforms

Many of these ports contain most of the necessary pieces. They will be filed under the appropriate platform above.

Emulators

These will be listed under the apporopriate platform above. There are a lot of emulators I have not listed above listed on Red Hat's Linux Applications and Utilities Page.

Misc. Links

How to contribute:

For now, just send me an email message with the URL and a brief description. If you want to format it as a valid HTML fragment, great; otherwise, I will. If you want to contribute something which is not already on the net, email it to me.
Senior Engineer for hire
Software Development - Electronic Design - Embedded Systems - Device Drivers - System/Network Administration and Security - Motor Control, RobotCNC - Linux/Un*x - 25+ years experience
The author of these pages is looking for a new gig.
[RESUME]

Engineers and electronic hobbyists: The new Open Symbol Project is creating open schematic symbols and PCB footprints for a variety of different CAD packages.

Mark Whitis's Website Home Page Linux Book: Linux Programming Unleashed My Resume Genealogical Data Contact Info Security About

All email messages received must pass the turing test or they will be considered SPAM. If it could have been written by a machine, it was.

Under no circumstances are you to email me with questions regarding windoze, any other microsoft operating system or application, or any software which runs under any form of windoze.

*