Linux-to-DJGPP cross-compiler RPMs for Fedora Core 4

I have seen several times questions about problems while building Linux hosted cross-compiler for DJGPP target in DJGPP mailing lists.

Here are GCC-4.0.2 and GCC-4.1.0 Linux to DJGPP cross-compilers source RPM stogether with source RPMS for djcrx204 package installation and cross-binutils (version 2.16.1). I have tested building Linux-to-DJGPP cross-compiler on a single machine under Fedora Core 4.

Here are 3 source RPMs:
  1. djcrx-2.04pre-4.src.rpm - for DJGPP header files, libc.a, stubify, stubedit. It would be nice to put in also dtou and utod.
  2. djcross-binutils-2.16.1-3.src.rpm - source RPM for building cross-binutils (binutils version 2.16.1)
  3. djcross-gcc-4.0.2-4.src.rpm - source RPM for building gcc-4.0.2 as  Linux hosted cross-compiler for target i586-pc-msdosdjgpp. Additionally DJGPP source file (gcc402s.zip) is generated while build process in build directory. The following language support is built: C, C++, Fortran 95, Objective C, Ada. So one needs C and Ada compilers installed (perhaps new enough) for build to succeed. I have not tested it for any else Linux distribution except Fedora Core 4
  4. djcross-gcc-4.1.0-2.src.rpm - source RPM for building gcc-4.1.0 as a Linux hosted cross-compiler for target i586-pc-msdosdjgpp. Additionally DJGPP source archive (gcc410s.zip is generated while build process in build directory. The following language support is built: C, C++, Fortran 95, Objective C, Objective-C++, Ada. So one needs C and Ada compilers installed (perhaps new enough) for build to succeed. I have not tested it for any else Linux distribution except Fedora Core 4. Now GCC-4.1.0 is at first bootstrapped as the native compiler for host system (A and Ada only) and installed into a temporary directory. So I'm ensuring that Linux to DJGPP cross-compiler is built with exactly the same compiler version (even same patches applied). At least GCC-4.1.0 cross-compiler build with GCC-4.0.2 failed for me.
I used for all this DJGPP-v2.0.4 CVS version from May 2005.

Also binary RPM packages for Fedora Core 4 are available. They will hopefully work also with upcoming Fedora Core 5, but I cannot be sure about that. Use with other RPM based distributions will perhaps require rebuilding from source RPMs and maybe also modifications to spec files.
  1. djcrx-2.04pre-4.noarch.rpm - DJGPP header files, libc.a, some tools etc. (stuff which comes from djcrx204.zip)
  2. djcross-binutils-2.16.1-3.i686.rpm - cross-binutils (version 2.16.1)
  3. djcross-gcc-4.0.2-3.i686.rpm - GCC-4.0.2 cross-compiler binary RPM (C, C++. Objective C, Fortran 95 and Ada compilers)
  4. djcross-gcc-4.1.0-2.i686.rpm - GCC-4.1.0 cross-compiler binary RPM (C, C++. Objective C, Objective C++, Fortran 95 and Ada compilers)
Building from djcross-gcc-4.0.2-4.src.rpm also generates GCC source archive for DJGPP, as I'm using the same script for modifying GCC sources as for DJGPP.


Changes:

2006/03/09: Uploaded newer GCC-4.0.2 RPMs and GCC-4.1.0 files.

2006/02/12: Rebuilt cross-compiler after small modifications in patches: fixes used name of  C++ standard library in
i586-pc-msdosdjgpp-gcc and other executables. Earlier I had to rename library. Also put generated DJGPP source archive and binary RPMs for Fedora Core on this page.

Andris Pavenis