AmigaOS cross compiler for Linux / MacOSX / Windows - hosted at github.com
Go to file
Krystian Bacławski 8ae32e5364 Various fixes bundled together. May fix compilation issues on Linux. 2014-02-06 17:22:19 +01:00
archives Don't verify SSL certificates while fetching files with HTTPS. Fix lha command line options inconsistency. 2014-01-23 19:08:16 +01:00
examples Various fixes bundled together. May fix compilation issues on Linux. 2014-02-06 17:22:19 +01:00
patches Fix uninitialized memory related bug. 2014-01-06 10:43:50 +01:00
scripts Various fixes bundled together. May fix compilation issues on Linux. 2014-02-06 17:22:19 +01:00
sdk Various fixes bundled together. May fix compilation issues on Linux. 2014-02-06 17:22:19 +01:00
tools Add ELF2HUNK tool from AROS distribution. 2014-01-04 23:40:49 +01:00
.gitignore Ignore binaries, MacOSX leftovers and unpacked archives. 2013-07-19 10:43:04 +02:00
README.md Various fixes bundled together. May fix compilation issues on Linux. 2014-02-06 17:22:19 +01:00
bootstrap.conf Add fd2sfd tool. 2014-01-02 20:55:34 +01:00
bootstrap.sh Various fixes bundled together. May fix compilation issues on Linux. 2014-02-06 17:22:19 +01:00
install-sdk.sh Add MUI example. Modify install-sdk to create static library. 2014-01-05 13:04:09 +01:00

README.md

GCC compiler for AmigaOS/m68k

Author: Krystian Bacławski

Short description: m68k-amigaos gcc / binutils toolchain build script.

Overview

m68k-amigaos-toolchain provides you a shell script that builds M68k AmigaOS 3.x) toolchain in your Unix-like environment. Build process should produce following set of tools that targets m68k-amigaos platform:

  • gcc 2.95.3
  • g++ 2.95.3
  • libstdc++ 2.10
  • binutils 2.9.1 (assembler, linker, etc.)
  • libnix 2.1 (standard ANSI/C library replacement for AmigaOS)
  • libm 5.4 (provides math library implementation for non-FPU Amigas)
  • AmigaOS headers & libraries (for AmigaOS 3.9)
  • ixemul.library 48.2
  • vbcc 0.9b + vclib
  • vasm 1.5c
  • vlink 0.14a

Note: Patches are welcome!

Downloads

There are no downloads provided for the time being. I do as much as possible to make the toolchain portable among Unix-like environments. Following platforms were tested and the toolchain is known to work for them:

  • Cygwin 1.7.18 (gcc 4.5.3)
  • Ubuntu 12.04 LTS 32-bit (gcc 4.6.3)
  • Ubuntu 12.04 LTS 64-bit (gcc 4.6.3) Requires gcc-multilib package!
  • MacOS X 10.7.5 (MacPorts - gcc 4.7.3)
  • MacOS X 10.8.4 (Homebrew - gcc 4.2.1 from XCode) Thanks go to Argasek!
  • MaxOS X 10.9.1 (MacPorts - gcc 4.8.2)

Documentation

Documentation from Free Software Fundation:

Texinfo documents from GeekGadgets converted into HTML:

AmigaOS specific documents:

Compiling

Firstly… you should have basic understanding of Unix console environment, really ;-)

Prerequisites

You have to have following packages installed in your system:

  • GNU autoconf
  • GNU flex 2.5.x
  • GNU gcc 4.x 32-bit version!
  • GNU make 3.x
  • lha
  • perl 5.10
  • libncurses5-dev 32-bit version!

For MacOSX users: you'll likely need to have MacPorts or Homebrew installed in order to build the toolchain.

How to build?

Warning: Building with sudo is not recommended. I'm not responsible for any damage to your system.

Follow steps listed below:

  1. Fetch m68k-amigaos-toolchain project to your local drive:

git clone git://github.com/cahirwpz/m68k-amigaos-toolchain.git

cd m68k-amigaos-toolchain


2. Download sources (use `fetch.sh` script in `archives` directory):   

    ```
# cd archives   
# ./fetch.sh
  1. Run bootstrap.sh script (with --prefix option to specify where to install the toolchain). Note, that the destination directory must be writable by the user.

cd ..

./bootstrap.sh --prefix=/opt/m68k-amigaos build


4. Wait for the result :-)

5. *(optional)* Install additional SDKs (e.g. AHI, CyberGraphX, Magic User Interface, etc.):

    ```
# export PATH=/opt/m68k-amigaos/bin:$PATH
# ./install-sdk.sh --prefix=/opt/m68k-amigaos ahi cgx mui

Note: If the build process fails, please write me an e-mail. I'll try to help out. Don't forget to put into e-mail as much data about your environment as possible!