Skip to content
AmigaOS cross compiler for Linux / MacOSX / Windows
Python C Shell Dockerfile
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Upgrade to IRA 2.09 Mar 10, 2018
dejagnu DejaGNU board for testing m68k-amigaos GCC Oct 4, 2016
examples Global C++ constructors and destructors work again. Fixes #42. Oct 15, 2016
patches Upgrade to IRA 2.09 Mar 10, 2018
scripts Various fixes bundled together. May fix compilation issues on Linux. Feb 6, 2014
sdk updated mui.sdk to latest 5.0-2016R3 version (which is still compatib… Jan 10, 2017
submodules
.gitignore Add missing patches. Aug 29, 2015
.gitmodules Add binutils 2.14 as an alternative for 2.9.1 Oct 25, 2016
Dockerfile
README.md Disable amitools due to TLS 1.2 problem. Dec 9, 2018
common.py
toolchain-m68k Disable amitools due to TLS 1.2 problem. Dec 9, 2018
toolchain-ppc Switch to HTTPS protocol for ftp.gnu.org Nov 12, 2017

README.md

AmigaOS cross compiler for Linux / MacOSX / Windows

Build Status

Author: Krystian Bacławski

This project is missing a maintainer! Want to become one? Ask adtools developer team!

Short description: Cross toolchain build script for AmigaOS m68k and ppc targets. Supported host platforms are Linux, MacOSX and Windows (with MSYS2).

Overview

amigaos-cross-toolchain project provides an easy way to build AmigaOS 3.x (m68k) and ppc AmigaOS 4.x (ppc) target toolchain in a Unix-like environment.

Build process should produce following set of tools for m68k-amigaos target:

  • gcc 2.95.3
  • g++ 2.95.3
  • libstdc++ 2.10
  • binutils 2.14 (assembler, linker, etc.)
  • libnix 2.2 (standard ANSI/C library replacement for AmigaOS)
  • libm 5.4 (provides math library implementation for non-FPU Amigas)
  • AmigaOS headers & libraries & autodocs (for AmigaOS 3.9)
  • vbcc toolchain (most recent release) including vasm, vlink and C standard library
  • IRA: portable M68000/010/020/030/040 reassembler for AmigaOS hunk-format executables, libraries, devices and raw binary files
  • vda68k: portable M68k disassembler for 68000-68060, 68851, 68881, 68882
  • amitools with vamos AmigaOS emulator which is proven to run SAS/C

... and following set of tools for ppc-amigaos target:

  • gcc 4.2.4
  • g++ 4.2.4
  • binutils 2.18 (assembler, linker, etc.)
  • newlib
  • clib 2.2
  • AmigaOS headers & libraries & autodocs (for AmigaOS 4.1)

Note: Patches are welcome!

Downloads

There are no binary 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:

  • Windows 7 SP1 32-bit (MSYS2 2.6.0, gcc 5.3.0)
  • Ubuntu 16.04 LTS 32-bit (gcc 5.4.0)
  • Ubuntu 16.04 LTS 64-bit (gcc 5.4.0) Requires gcc-multilib package, and i386 libraries!
  • MacOS X 10.9.5 (MacPorts - Apple's clang-600.0.57)

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 gcc 5.x 32-bit version! or Clang
  • Python 2.7.x
  • libncurses-dev
  • python-dev 2.7
  • GNU make 4.x
  • perl 5.22
  • git
  • GNU patch
  • GNU gperf
  • GNU bison

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 amigaos-cross-toolchain project to your local drive:
    # git clone git://github.com/cahirwpz/amigaos-cross-toolchain.git
    # cd amigaos-cross-toolchain
  1. Run toolchain-m68k or toolchain-ppc script (with --prefix option to specify where to install the toolchain). Note, that the destination directory must be writable by the user.
    # ./toolchain-m68k --prefix=/opt/m68k-amigaos build
  1. Wait for the result :-)

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

    # ./toolchain-m68k --prefix=/opt/m68k-amigaos install-sdk ahi cgx mui

What if something goes wrong?

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! It's vitally important to send me a full log from build process. You can capture it by redirecting output to a file with following command:

    # ./toolchain-m68k build 2>&1 | tee build.log

... but remember to cleanup your build environment beforehand with:

    # rm -rf .build-m68k
You can’t perform that action at this time.