m68k-atari-mint cross-tools

(Some of the text on this page was copied/pasted from Vincent Rivière's website, with his permission.)


You will find here gcc, g++, as, ld, and other tools configured to produce executables for the Atari ST. It means that you can use all the latest C++ features, such as templates, exceptions, STL, as well as inline assembly, to build software which will run on your old Atari ST.

The original sources are provided, as well as the patches and the build scripts. It would be easy to recompile them on any operating system already supporting the GNU tools.
Feel free to redistribute, recompile, and improve the packages, with respect to their own licenses.

 

Important Note for the mintelf toolchains:
New All the elf toolchains have now been updated to produce the new PRG+ELF executable format, which finally makes almost all elf features available. This requires binutils >= 2.41. If you have previously been using the mintelf toolchains, you should also update all libraries. They also now produce dwarf-2 debug information by default.


Quickstart for Windows

  1. Install Cygwin 32-bit. This will provide you a full UNIX-like environment necessary for running the GNU tools.
  2. Install the following packages, using the Cygwin setup program: libmpc3.
  3. Download and install m68k-atari-mint-base-20200501-cygwin32.tar.xz <file list> (~71 MB).
  4. Now you can use any tool prefixed by m68k-atari-mint-, such as m68k-atari-mint-gcc, m68k-atari-mint-g++, and even read the man pages.

Alternatively, you can also use MinGW:

  1. Install MSYS2/MinGW.
  2. From the list below, install the mingw packages for at least
    1. binutils
    2. gcc
    3. mintlib
    4. fdlibm
    5. gemlib

Note: the binutils and gcc packages were built with a prefix of /mingw32. If you are using an older installation using MSYS from mingw.org you should extract them by using
tar -C /mingw --strip-components=1 -xf <archive>

 

The cygwin packages were built on a recent system (cygwin dll 2.10.0). Should there be problems, you may have to upgrade your version, or recompile it yourself.

Note: On cygwin, sometimes tar fails to extract symlinks. Although cygwin supports symlinks on a NTFS filesystem, that filesystem cannot create links to non-existant files. Depending on whether the original file or link appears first in the archive, that might fail. Just extracting the same archive again should fix that.

Notes for linux:

The linux packages were built on openSUSE tumbleweed (kernel 6.1.3, glibc 2.36). They should work on other linux distros too, but will require at least glibc 2.14.

 

Everything is installed in /usr/m68k-atari-mint and /usr/lib/gcc/m68k-atari-mint.
If you want to completely uninstall the tools, you just have to remove these directories.

Notes for macOS:

The macOS packages were built on macOS 10.13 (High Sierra), with a deployment target of 10.9 (Mavericks).

Some of the packages (binutils, gcc & mintbin) are now also available as universal x86_64/arm64 binaries. Those are build using the same scripts as provided here, but are run in a github runner. The whole repo for these script is available here. The resulting binaries are available here.

Everything is installed in /opt/cross-mint.
If you want to completely uninstall the tools, you just have to remove this directory.

 

 

 

Basic packages

Some of the build scripts use a script with common functions, which is available here.

 

Component Version Packages Comments
binutils
2.43
20240808
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
MinGW64 MinGW64 Package:
Linux Linux Package:
Linux (x86) Linux (x86) Package:
MacOSX MacOSX Package:
Atari Atari Package:
The binutils are a collection of low-level language tools.
The full documentation can be found here.

Note that official support for m68k-aout has been removed since binutils-2.31.
This is a version where that support has been added back in.
New For the mintelf toolchains, GDB is now also available.
binutils
2.30
20180323
GitHub repository:
Original sources:
MiNT patch:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
MacOSX MacOSX Package:
The binutils are a collection of low-level language tools.
The full documentation can be found here.

Note that official support for m68k-aout has been removed in binutils-2.31.
This is the last official version with support for it.
GCC
4.6.4
20230719
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
Linux (x86) Linux (x86) Package:
MacOSX MacOSX Package:
Atari Atari Package:
m68k-atari-mint-gcc is the C compiler.
m68k-atari-mint-g++ is the C++ compiler.
They just work. I only tested the C and C++ languages, but other languages may work, too.
If you want to generate DRI symbols in the final executable, append the option -Wl,--traditional-format to inform the linker.
I configured this version to generate 68000 code by default, and I enabled multilib. By default, sizeof(int) == 4, but if you compile with -mshort then sizeof(int) == 2 (unsupported by the current MiNTLib). Every object file and every library must be compiled with the same option! You can also generate code for the 68020 and higher and for the FPU by using the -m68020-60 option. And you can generate code for ColdFire V4e processors by using the -mcpu=5475 option.
The full documentation can be found here.
GCC contains everything to compile C programs, except a standard library and a math library.
GCC
14.2.0
20240809
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
MinGW64 MinGW64 Package:
Linux Linux Package:
MacOSX MacOSX Package:
Atari Atari Package:
This is the currently most recent official version of GCC. It comes in two flavours: one for an a.out toolchain (as with the previously used version 4.6.4), and one for an elf toolchain. Elf toolchain here means that it will still produce the same executable format, but works with elf object files. To support this better, all libraries offered here were also recompiled using this format.

Note: This version now was compiled against fdlibm; it is strongly recommended to use fdlibm instead of the ancient pml math library.
GCC
13.3.0
20240530
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
MinGW64 MinGW64 Package:
Linux Linux Package:
MacOSX MacOSX Package:
Atari Atari Package:
Slightly older version of GCC.
GCC
12.3.0
20230719
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
MacOSX MacOSX Package:
Atari Atari Package:
Slightly older version of GCC.
GCC
11.4.0
20230719
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
MacOSX MacOSX Package:
Atari Atari Package:
Slightly older version of GCC.
GCC
10.5.0
20230719
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
Linux (x86) Linux (x86) Package:
MacOSX MacOSX Package:
Atari Atari Package:
Slightly older version of GCC.
GCC
9.5.0
20230719
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
Linux (x86) Linux (x86) Package:
MacOSX MacOSX Package:
Atari Atari Package:
Slightly older version of GCC.
GCC
8.5.0
20230719
GitHub repository:
Original sources:
MiNT patch:
Build script:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
Linux (x86) Linux (x86) Package:
MacOSX MacOSX Package:
Atari Atari Package:
Slightly older version of GCC.
GCC
7.5.0
20230719
GitHub repository:
Original sources:
MiNT patch:
Build script:
Documentation:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
Linux (x86) Linux (x86) Package:
MacOSX MacOSX Package:
Atari Atari Package:
Slightly older version of GCC.
MiNTBin
0.4
20230911
GitHub repository:
Original sources:
Build script:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
MinGW32 MinGW32 Package:
Linux Linux Package:
Linux (x86) Linux (x86) Package:
MacOSX MacOSX Package:
Atari Atari Package:
MiNTBin has been written by Guido Flohr. It is a set of tools for manipulating the MiNT executables generated by ld. They are a complement to the binutils. The main tools are stack for setting the stack size of an executable, and flags for setting the header flags.
GDB
16.0
20240808
GitHub repository:
Original sources:
Cygwin32 Cygwin32 Package:
Cygwin64 Cygwin64 Package:
Linux Linux Package:
Linux (x86) Linux (x86) Package:
Atari Atari Package:
GDB, the GNU debugger, allows you to debug programs written in C, C++, Java, and other languages, by executing them in a controlled fashion and printing their data.
Source & patches are part of the binutils package.

Library packages

Note that these packages only contain atari/mint specific files, so there is only one package of them for all host systems. They have all been built and packaged on linux though (with a prefix of /usr), so to install them for eg. MinGW you should unpack them using
tar -C <your-install-dir> --strip-components=1 -xf <archive>.

All of these libraries have been compiled with gcc 7.x, but they can be used with other versions, too. Also, they all have been compiled for the elf toolchain. Most of these were compiled with -flto (link-time-optimization), a feature that is not available for a.out libraries. For some (notably mintlib) this is not yet possible.

 

For packages that also build binaries, the *-dev packages will have executables in <sys-root>/usr/bin that were compiled for 68k.

 

For native installation, there will also be *-bin packages for other machines. Do not install these on a cross-development environment(at least not to your usual installation directory), as this may overwrite your system binaries.

They are meant to be installed in a MiNT environment, and therefore were packaged with paths like /usr/bin. In general, the binaries won't be of much use in a cross-development installation.

 

Component Version Packages Comments
MiNTLib
0.60.1
20240718
GitHub repository:
Original sources:
Build script:
Devel Package:
MiNTLib is a standard C library. It allows you to build software which runs on MiNT and TOS operating systems. Unlike other packages, I used the latest sources from the CVS repository instead of the latest official release.

Libraries include -mfastcall variants
PML
2.03
20171006
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
PML stands for Portable Math Library.
It works, but of course it is really slow on a 68000 without FPU.
For a comparison to fdlibm, see Math libraries for Atari
Warning:This library is deprecated. Use fdlibm instead.
fdlibm
20240425
GitHub repository:
Original sources:
Build script:
Devel Package:
fdlibm is a portable math library that was originally
developed by Sun Microsystems.
You should be able to use it at a replacement for PML, but note that all packages provided here were compiled using PML.
For a comparison to PML, see Math libraries for Atari

Libraries include -mfastcall variants
GEMlib
0.44.0
20240425
GitHub repository:
Original sources:
Build script:
Devel Package:
GEMlib allows you to write graphical programs using GEM.
It is maintained by Arnaud Bercegeay; the official releases are available on the GEMlib's homepage. However, the latest sources are available on the FreeMiNT's GitHub repository.

Libraries include -mfastcall variants
CFLIB
21
20240430
GitHub repository:
Original sources:
Build script:
Devel Package:
CFLIB is Christian Felsch's GEM utility library. It provide advanced controls, such as check boxes, radio buttons, combo boxes... It also allows windowed dialogs.
BUG: On plain TOS, CFLIB makes intensive use of the GEM USERDEF feature. Due to bad GEM design, USERDEF callbacks are called in supervisor mode using the very small internal AES stack. Unfortunately, some GemLib functions such as v_gtext() needs an insane amout of stack (more than 2 KB). So some USERDEF callbacks quickly produces an AES internal stack overflow, and crash the entire system.
Concretely, due to this issue, programs using CFLIB work fine on XaAES and TOS 4.04, but crash on TOS 1.62 and early versions of EmuTOS.

Libraries include -mfastcall variants
gemma
git
20181123
GitHub repository:
Original sources:
Build script:
Devel Package:
Gemma is a support library for GEM application programs.
zlib
1.3.1
20240511
Original sources:
MiNT patch:
Build script:
Devel Package:
zlib is a general-purpose lossless data-compression library, implementing an API for the DEFLATE algorithm, the latter of which is being used by, for example, gzip and the ZIP archive format.

This library is also available as a shared library.

Libraries include -mfastcall variants
libpng
1.6.39
Original sources:
MiNT patch:
Build script:
Devel Package:
Portable Network Graphics
An Open, Extensible Image Format with Lossless Compression

This library is also available as a shared library.

Libraries include -mfastcall variants
bzip2
1.0.8
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
bzip2 is a freely available, patent free (see below), high-quality data compressor. It typically compresses files to within 10% to 15% of the best available techniques (the PPM family of statistical compressors), whilst being around twice as fast at compression and six times faster at decompression.

This library is also available as a shared library.

Libraries include -mfastcall variants
LDG
20171014
Original sources:
MiNT patch:
Build script:
Devel Package:
LDG stands for GEM Dynamic Libraries (actually Librairies Dynamiques GEM in French). It's a system allowing GEM applications to load and to share external modules.
Only the libraries are compiled. To use modules, you also have to install the auto folder programs from http://ldg.sourceforge.net/.

Libraries include -mfastcall variants
WinDom
2.0.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Windom is a C library to make GEM programming very easy. With the help of windom, you can focus on programming the real job of your application, and let windom handle complex and "automatic" GEM stuff (toolbar, forms, menu in windows...).
Warning: do not run make in the top level directory after unpacking the source archive; the build system is utterly broken and will remove your source directory.
WinDom
1.21.3
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
This is the 1.x release of windom.
SDL
1.2.16-git
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
SDL is the Simple DirectMedia Layer library. It is a low-level and cross-platform library for building games or similar programs.
Thanks to Patrice Mandin, SDL is available on Atari platforms. SDL programs can run either in full screen or in a GEM window, depending on the SDL_VIDEODRIVER environment variable.

Cross compiling hint: in many autoconf/automake based packages, the presence of SDL is checked for by searching for a sdl-config script. Most likely, the one found will be the one for your host system. This has the bad effect of adding absolute search paths like /usr/include/SDL and /usr/lib. If that happens, you have to manually edit config.status after running configure, and remove those flags. In some cases, you have to add -I/usr/m68k-atari-mint/sys-root/usr/include/SDL instead.

Libraries include -mfastcall variants
ncurses
6.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Ncurses is a library which allows building full-screen text mode programs, such as vim, less, or the GDB text UI.
readline
7.0
Original sources:
MiNT patch:
Build script:
Devel Package:
The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those lines, and perform csh-like history expansion on previous commands.
OpenSSL
1.1.1p
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
OpenSSL is a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library.
arc
5.21p
Original sources:
MiNT patch:
Build script:
Binary Package:
ARC is used to create and maintain file archives. An archive is a group of files collected together into one file in such a way that the individual files may be recovered intact.
arj
3.10.22
Original sources:
MiNT patch:
Build script:
Binary Package:
A portable version of the ARJ archiver, available for a growing number of DOS-like and UNIX-like platforms on a variety of architectures.
lha
1.14i
Original sources:
MiNT patch:
Build script:
Binary Package:
LHA for UNIX - Note: This software is licensed under the ORIGINAL LICENSE. It is written in man/lha.n in Japanese
xz
5.4.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
XZ Utils is free general-purpose data compression software with a high compression ratio. XZ Utils were written for POSIX-like systems, but also work on some not-so-POSIX systems. XZ Utils are the successor to LZMA Utils.

This library is also available as a shared library.

Libraries include -mfastcall variants
zip
3.0
Original sources:
MiNT patch:
Build script:
Binary Package:
Zip is a compression and file packaging utility. It is compatible with PKZIP(tm) 2.04g (Phil Katz ZIP) for MS-DOS systems.
unzip
6.0
Original sources:
MiNT patch:
Build script:
Binary Package:
UnZip is an extraction utility for archives compressed in .zip format (known as "zip files"). Although highly compatible both with PKWARE's PKZIP(tm) and PKUNZIP utilities for MS-DOS and with Info-ZIP's own Zip program, our primary objectives have been portability and non-MS-DOS functionality. This version can also extract encrypted archives.
zoo
2.10.1
Original sources:
MiNT patch:
Build script:
Binary Package:
Zoo is a packer based on the Lempel-Ziv algorithm. Lots of files on DOS/AmigaDOS and TOS systems used this packer for their archives. The compression rate of gzip is not reached, and thus zoo should only be used for decompressing old archives.
gmp
6.3.0
Original sources:
MiNT patch:
Build script:
Devel Package:
A library for calculating huge numbers (integer and floating point).
mpfr
4.2.1
Original sources:
MiNT patch:
Build script:
Devel Package:
The MPFR library is a C library for multiple-precision floating-point computations with exact rounding (also called correct rounding). It is based on the GMP multiple-precision library.
mpc
1.3.1
Original sources:
MiNT patch:
Build script:
Devel Package:
MPC is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It is built upon and follows the same principles as MPFR.
tar
1.34
Original sources:
MiNT patch:
Build script:
Binary Package:
GNU Tar is an archiver program. It is used to create and manipulate files that are actually collections of many other files; the program provides users with an organized and systematic method of controlling a large amount of data. Despite its name, that is an acronym of "tape archiver", GNU Tar is able to direct its output to any available devices, files or other programs, it is also able to access remote devices or files.
libiconv
1.17
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The libiconv library provides an iconv() implementation, for use on systems which don't have one, or whose implementation cannot convert from/to Unicode.

This library is also available as a shared library.

Libraries include -mfastcall variants
M4
1.4.18
Original sources:
MiNT patch:
Build script:
Binary Package:
GNU m4 is an implementation of the traditional Unix macro processor.
flex
2.6.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
FLEX is a tool for generating scanners: programs that recognize lexical patterns in text.
bison
3.6.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Bison is a general-purpose parser generator that converts an annotated context-free grammar into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables. As an experimental feature, Bison can also generate IELR(1) or canonical LR(1) parser tables. Once you are proficient with Bison, you can use it to develop a wide range of language parsers, from those used in simple desk calculators to complex programming languages.
expat
2.2.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Expat is an XML parser library written in C. It is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags).
libidn2
2.0.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Libidn2 is an implementation of the IDNA2008 + TR46 specifications (RFC 5890, RFC 5891, RFC 5892, RFC 5893, TR 46). Libidn2 is a standalone library, without any dependency on Libidn. Libidn2 is believed to be a complete IDNA2008 / TR46 implementation, but has yet to be as extensively used as the original Libidn library.
libssh2
1.8.0
Original sources:
MiNT patch:
Build script:
Devel Package:
libssh2 is a library implementing the SSH2 protocol as defined by Internet Drafts: SECSH-TRANS, SECSH-USERAUTH, SECSH-CONNECTION, SECSH-ARCH, SECSH-FILEXFER, SECSH-DHGEX, SECSH-NUMBERS, and SECSH-PUBLICKEY.
nghttp2
1.26.0
Original sources:
MiNT patch:
Build script:
Devel Package:
nghttp2 is an implementation of HTTP/2 and its header compression algorithm HPACK in C.
libxml2
2.10.3
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The XML C library was initially developed for the GNOME project. It is now used by many programs to load and save extensible data structures or manipulate any kind of XML files.
libunistring
0.9.7
Original sources:
MiNT patch:
Build script:
Devel Package:
This portable C library implements Unicode string types in three flavours: (UTF-8, UTF-16, UTF-32), together with functions for character processing (names, classifications, properties) and functions for string processing (iteration, formatted output, width, word breaks, line breaks, normalization, case folding and regular expressions).
libpsl
0.21.2
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
libpsl is a C library to handle the Public Suffix List. A "public suffix" is a domain name under which Internet users can directly register own names. HTTP user agents can use it to avoid privacy-leaking "supercookies" and "super domain" certificates. It is also use do highlight domain parts in a user interface and sorting domain lists by site.
curl
7.56.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Curl is a client to get documents and files from or send documents to a server using any of the supported protocols (HTTP, HTTPS, FTP, FTPS, TFTP, DICT, TELNET, LDAP, or FILE). The command is designed to work without user interaction or any kind of interactivity.
freetype2
2.8.1
Original sources:
MiNT patch:
Build script:
Devel Package:
This library features TrueType fonts for open source projects. This version also contains an autohinter for producing improved output.

This library is also available as a shared library.

Libraries include -mfastcall variants
c-ares
1.7.5
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
c-ares is a C library that performs DNS requests and name resolves asynchronously. c-ares is a fork of the library named 'ares', written by Greg Hudson at MIT.
jpeg
8d
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
This package is a library of functions that manipulate jpeg images, along with simple clients for manipulating jpeg images.

This library is also available as a shared library.

Libraries include -mfastcall variants
Hermes
1.3.3
Original sources:
MiNT patch:
Build script:
Devel Package:
HERMES is a library designed to convert a source buffer with a specified pixel format to a destination buffer with possibly a different format at the maximum possible speed.
On x86 and MMX architectures, handwritten assembler routines are taking over the job and doing it lightning fast.
On top of that, HERMES provides fast surface clearing, stretching and some dithering. Supported platforms are basically all that have an ANSI C compiler as there is no platform specific code but those are supported: DOS, Win32 (Visual C), Linux, FreeBSD (IRIX, Solaris are on hold at the moment), some BeOS support.
gzip
1.9
Original sources:
MiNT patch:
Build script:
Binary Package:
Gzip reduces the size of the named files using Lempel-Ziv coding LZ77. Whenever possible, each file is replaced by one with the extension .gz, while keeping the same ownership modes and access and modification times.
grep
3.1
Original sources:
MiNT patch:
Build script:
Binary Package:
The grep command searches one or more input files for lines containing a match to a specified pattern. By default, grep prints the matching lines.
ctris
0.42
Original sources:
Build script:
Binary Package:
ctris is a curses based Tetris game.
dhcp
3.1.ESV
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The Dynamic Host Configuration Protocol (DHCP) is a network protocol used to assign IP addresses and provide configuration information to devices such as servers, desktops, or mobile devices, so they can communicate on a network using the Internet Protocol (IP). ISC DHCP is a collection of software that implements all aspects of the DHCP (Dynamic Host Configuration Protocol) suite.
gawk
4.1.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The gawk packages contains the GNU version of awk, a text processing utility. Awk interprets a special-purpose programming language to do quick and easy text pattern matching and reformatting jobs. Gawk should be upwardly compatible with the Bell Labs research version of awk and is almost completely compliant with the 1993 POSIX 1003.2 standard for awk.
file
5.45
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
With the file command, you can obtain information on the file type of a specified file. File type recognition is controlled by the file /etc/magic, which contains the classification criteria. This command is used by apsfilter to permit automatic printing of different file types.
diffutils
3.6
Original sources:
MiNT patch:
Build script:
Binary Package:
The GNU diff utilities find differences between files. diff is used to make source code patches, for instance.
findutils
4.7.0
Original sources:
MiNT patch:
Build script:
Binary Package:
The findutils package contains programs which will help you locate files on your system. The find utility searches through a hierarchy of directories looking for files which match a certain set of criteria (such as a file name pattern). The xargs utility builds and executes command lines from standard input arguments (usually lists of file names generated by the find command).
coreutils
8.32
Original sources:
MiNT patch:
Build script:
Binary Package:
These are the GNU core utilities. This package is the union of the GNU fileutils, sh-utils, and textutils packages.
[ arch b2sum base32 base64 basename cat chcon chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir dircolors dirname du echo env expand expr factor false fmt fold groups head hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup nproc numfmt od paste pathchk pinky pr printenv printf ptx pwd readlink realpath rm rmdir runcon seq sha1sum sha224sum sha256sum sha384sum sha512sum shred shuf sleep sort split stat stdbuf stty sum sync tac tail tee test timeout touch tr true truncate tsort tty uname unexpand uniq unlink uptime users vdir wc who whoami yes ]

This package does not provide man pages, since those are generated automatically by running the tools and parsing the --help message, which does not work when cross-compiling. However that also means that those man pages do not provide any useful information beyond what is available by just running <tool> --help.
bash
4.4.23
Original sources:
MiNT patch:
Build script:
Binary Package:
Bash is an sh-compatible command interpreter that executes commands read from standard input or from a file. Bash incorporates useful features from the Korn and C shells (ksh and csh). Bash is intended to be a conformant implementation of the IEEE Posix Shell and Tools specification (IEEE Working Group 1003.2).
Note: /bin/sh is now a bash compiled with minimal configuration (ie. no line editing features)
make
4.2.1
Original sources:
MiNT patch:
Build script:
Binary Package:
The GNU make command with extensive documentation.
patch
2.7.5
Original sources:
MiNT patch:
Build script:
Binary Package:
The GNU patch program is used to apply diffs between original and changed files (generated by the diff command) to the original files.
groff
1.22.4
Original sources:
MiNT patch:
Build script:
Binary Package:
Groff is used to "compile" man pages stored in groff or nroff format for different output devices, for example, displaying to a screen or in PostScript(tm) format for printing on a PostScript(tm) printer. Most programs store their man pages in either /usr/share/man/ or /usr/X11R6/man/.
git
2.21.0
Original sources:
MiNT patch:
Build script:
Binary Package:
Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals.
ca-certificates
10b2785
GitHub repository:
Original sources:
Build script:
Package:
Update-ca-certificates is intended to keep the certificate stores of SSL libraries like OpenSSL or GnuTLS in sync with the system's CA certificate store that is managed by p11-kit.
gdbm
1.12
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
GNU dbm is a library of database functions that use extensible hashing and work similar to the standard UNIX dbm. These routines are provided to a programmer needing to create and manipulate a hashed database.
The basic use of GDBM is to store key/data pairs in a data file. Each key must be unique and each key is paired with only one data item.
The library provides primitives for storing key/data pairs, searching and retrieving the data by its key and deleting a key along with its data. It also supports sequential iteration over all key/data pairs in a database.
For compatibility with programs using old UNIX dbm functions, the package also provides traditional dbm and ndbm interfaces.
db
4.8.30
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The Berkeley DB Database is a programmatic toolkit that provides database support for applications.
perl
5.26.1
Original sources:
MiNT patch:
Build script:
Binary Package:
perl - Practical Extraction and Report Language

Perl is optimized for scanning arbitrary text files, extracting information from those text files, and printing reports based on that information. It is also good for many system management tasks. Perl is intended to be practical (easy to use, efficient, and complete) rather than beautiful (tiny, elegant, and minimal).

Some of the modules available on CPAN can be found in the "perl" series.
autoconf
2.69
Original sources:
MiNT patch:
Build script:
Package:
GNU Autoconf is a tool for configuring source code and makefiles. Using autoconf, programmers can create portable and configurable packages, because the person building the package is allowed to specify various configuration options.

You should install autoconf if you are developing software and would like to create shell scripts to configure your source code packages.

Note that the autoconf package is not required for the end user who may be configuring software with an autoconf-generated script; autoconf is only required for the generation of the scripts, not their use.
autoconf-archive
2023.02.20
Original sources:
Build script:
Package:
The GNU Autoconf Archive is a collection of more than 450 macros for `GNU Autoconf <http://www.gnu.org/software/autoconf>` that have been contributed as free software by friendly supporters of the cause from all over the Internet. Every single one of those macros can be re-used without imposing any restrictions whatsoever on the licensing of the generated `configure` script. In particular, it is possible to use all those macros in `configure` scripts that are meant for non-free software. This policy is unusual for a Free Software Foundation project. The FSF firmly believes that software ought to be free, and software licenses like the GPL are specifically designed to ensure that derivative work based on free software must be free as well. In case of Autoconf, however, an exception has been made, because Autoconf is at such a pivotal position in the software development tool chain that the benefits from having this tool available as widely as possible outweigh the disadvantage that some authors may choose to use it, too, for proprietary software.
automake
1.16
Original sources:
MiNT patch:
Build script:
Package:
Automake is a tool for automatically generating "Makefile.in" files from "Makefile.am" files. "Makefile.am" is a series of "make" macro definitions (with rules occasionally thrown in). The generated "Makefile.in" files are compatible with the GNU Makefile standards.
libbeecrypt
4.1.2
Original sources:
MiNT patch:
Build script:
Devel Package:
BeeCrypt is an ongoing project to provide a strong and fast cryptography toolkit. Includes entropy sources, random generators, block ciphers, hash functions, message authentication codes, multiprecision integer routines, and public key primitives.
lua53
5.3.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language.

Lua combines procedural syntax (similar to Pascal) with data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it suitable for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C.
lua51
5.1.5
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language.

Lua combines procedural syntax (similar to Pascal) with data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it suitable for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C.
popt
1.16
Original sources:
MiNT patch:
Build script:
Devel Package:
Popt is a C library for parsing command line parameters. Popt was heavily influenced by the getopt() and getopt_long() functions. It improves on them by allowing more powerful argument expansion. Popt can parse arbitrary argv[] style arrays and automatically set variables based on command line arguments. Popt allows command line arguments to be aliased via configuration files and includes utility functions for parsing arbitrary strings into argv[] arrays using shell-like rules.
rpm
4.15.1.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The RPM Package Manager (RPM) is a powerful package management system capable of

  • building computer software from source into easily distributable packages
  • installing, updating and uninstalling packaged software
  • querying detailed information about the packaged software, whether installed or not
  • verifying integrity of packaged software and resulting software installation
rhash
1.3.8
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
RHash (Recursive Hasher) is a console utility for computing and verifying magnet links and hash sums of files.
It supports CRC32, MD4, MD5, SHA1/SHA2, Tiger, DC++ TTH, BitTorrent BTIH, AICH, eDonkey hash, GOST R 34.11-94, RIPEMD-160, HAS-160, EDON-R, Whirlpool and Snefru hash algorithms. Hash sums are used to ensure and verify integrity of large volumes of data for a long-term storing or transferring.
libarchive
3.3.2
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Libarchive is a programming library that can create and read several different streaming archive formats, including most popular tar variants and several cpio formats. It can also write shar archives and read ISO9660 CDROM images. The bsdtar program is an implementation of tar(1) that is built on top of libarchive. It started as a test harness, but has grown and is now the standard system tar for FreeBSD 5 and 6.
elfutils
0.170
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
elfutils is a collection of utilities and libraries to read, create and modify ELF binary files, find and handle DWARF debug data, symbols, thread state and stacktraces for processes and core files.
libuv
1.18.0
Original sources:
MiNT patch:
Build script:
Devel Package:
libuv is a support library with a focus on asynchronous I/O. It was primarily developed for use by Node.js, but it is also used by Mozilla's Rust language, Luvit, Julia, pyuv, and others.
cmake
3.10.2
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
CMake is a cross-platform, open-source build system
libsolv
0.6.33
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
libsolv is a library for solving packages and reading repositories. The solver uses a satisfiability algorithm.
python2
2.7.14
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Python is an interpreted, object-oriented programming language, and is often compared to Tcl, Perl, Scheme, or Java. You can find an overview of Python in the documentation and tutorials included in the python-doc (HTML) or python-doc-pdf (PDF) packages.
python3
3.11.8
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Python 3 is modern interpreted, object-oriented programming language, often compared to Tcl, Perl, Scheme, or Java. You can find an overview of Python in the documentation and tutorials included in the python3-doc package.
libffi
3.2.1.git
Original sources:
MiNT patch:
Build script:
Devel Package:
The libffi library provides a portable, high level programming interface to various calling conventions. This allows a programmer to call any function specified by a call interface description at run time.
libgpg-error
1.46
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
This is a library that defines common error values for all GnuPG components. Among these are GPG, GPGSM, GPGME, GPG-Agent, libgcrypt, pinentry, SmartCard Daemon, and possibly more in the future.
libassuan
2.5.5
Original sources:
MiNT patch:
Build script:
Devel Package:
Libassuan is the IPC library used by gpg2 (GnuPG version 2)
gettext
0.19.8.1-2
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
This package contains the intl library as well as tools that ease the creation and maintenance of message catalogs. It allows you to extract strings from source code. The supplied Emacs mode (po-mode.el) helps editing these catalogs (called PO files, for portable object) and adding translations. A special compiler turns these PO files into binary catalogs.
libksba
1.6.3
Original sources:
MiNT patch:
Build script:
Devel Package:
KSBA is a library to simplify the task of working with X.509 certificates, CMS data, and related data.
libgcrypt
1.10.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Libgcrypt is a general purpose library of cryptographic building blocks. It is originally based on code used by GnuPG. It does not provide any implementation of OpenPGP or other protocols. Thorough understanding of applied cryptography is required to use Libgcrypt.
giflib
5.1.4
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
This Library allows manipulating GIF Image files. Since the LZW patents have expired, giflib can again be used instead of libungif.

Libraries include -mfastcall variants
libexif
0.6.22
Original sources:
MiNT patch:
Build script:
Devel Package:
This library is used to parse EXIF information from JPEGs created by digital cameras.

This library is also available as a shared library.

Libraries include -mfastcall variants
tiff
4.5.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
This package contains the library and support programs for the TIFF image format.

This library is also available as a shared library.

Libraries include -mfastcall variants
isl
0.26
Original sources:
MiNT patch:
Build script:
Devel Package:
ISL is a library for manipulating sets and relations of integer points bounded by linear constraints. It is used by Cloog and the GCC Graphite optimization framework.
libmikmod
3.3.7
Original sources:
MiNT patch:
Build script:
Devel Package:
Libmikmod is a portable sound library, capable of playing samples as well as module files. It was originally written by Jean-Paul Mikkers (MikMak) for DOS. It supports OSS /dev/dsp, ALSA, and Esound and can also write wav files. Supported file formats include mod, stm, s3m, mtm, xm, and it.

Libraries include -mfastcall variants
libogg
1.3.3
Original sources:
MiNT patch:
Build script:
Devel Package:
Libogg is a library for manipulating Ogg bitstreams. It handles both making Ogg bitstreams and getting packets from Ogg bitstreams.
Ogg is the native bitstream format of libvorbis (Ogg Vorbis audio codec) and libtheora (Theora video codec).

Libraries include -mfastcall variants
flac
1.3.2
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
FLAC is an audio coding format for lossless compression of digital audio, and is also the name of the reference software package that includes a codec implementation. Digital audio compressed by FLAC's algorithm can typically be reduced to between 50 and 70 percent of its original size, and decompresses to an identical copy of the original audio data.

Libraries include -mfastcall variants
libvorbis
1.3.6
Original sources:
MiNT patch:
Build script:
Devel Package:
Vorbis is a fully open, nonproprietary, patent-and-royalty-free, and general-purpose compressed audio format for audio and music at fixed and variable bit rates from 16 to 128 kbps/channel.
The native bitstream format of Vorbis is libogg (Ogg). Alternatively, libmatroska (matroska) can also be used.

Libraries include -mfastcall variants
vorbis-tools
1.4.0
Original sources:
MiNT patch:
Build script:
Binary Package:
This package contains some tools for Ogg Vorbis:
oggenc (an encoder) and ogg123 (a playback tool). It also has vorbiscomment (to add comments to Vorbis files), ogginfo (to give all useful information about an Ogg file, including streams in it), oggdec (a simple command line decoder), and vcut (which allows you to cut up Vorbis files).
SDL_mixer
1.2.13
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
A multichannel audio mixer. It supports four channels of 16-bit stereo audio, plus a single channel of music, mixed by the popular MikMod MOD, Timidity MIDI, and SMPEG MP3 libraries.

Cross compiling hint: on modern platforms, it is sufficient to just link against SDL_mixer, because the other libraries are referenced there as shared libraries. Since for atari we have only static libraries, you have to link those explicitly. The correct link command (order is important) is:
-lSDL_mixer -lSDL -lFLAC -lvorbisfile -lvorbis -lmikmod -logg -lmpg123 -lgem -lm
See also other hints about SDL.

Libraries include -mfastcall variants
SDL_image
1.2.13
Original sources:
MiNT patch:
Build script:
Devel Package:
This is a simple library to load images of various formats as SDL surfaces. This library supports the BMP, PPM, PCX, GIF, JPEG, PNG, TIFF and WEBP formats.
Cross compiling hint: on modern platforms, it is sufficient to just link against SDL_images, because the other libraries are referenced there as shared libraries. Since for atari we have only static libraries, you have to link those explicitly. The correct link command (order is important) is:
-lSDL -lSDL_image -ltiff -ljpeg -lpng -llzma -lz -lbz2 -lgem -lm
See also other hints about SDL.

Libraries include -mfastcall variants
SDL_ttf
2.0.11
Original sources:
MiNT patch:
Build script:
Devel Package:
This is a sample library that allows you to use TrueType fonts in your SDL applications. The correct link command (order is important) is:
-lSDL -lSDL_ttf -lfreetype -lpng -lz -lbz2 -lgem -lm
See also other hints about SDL.

Libraries include -mfastcall variants
SDL_net
1.2.8
Original sources:
MiNT patch:
Build script:
Devel Package:
This is a small cross-platform networking library for use with SDL.

Libraries include -mfastcall variants
povray
3.6.1
fdlibm
Original sources:
MiNT patch:
Build script:
Binary Package:
The Persistence of Vision Ray tracer creates three-dimensional, photo-realistic images using a rendering technique called ray tracing. It reads in a text file containing information describing the objects and lighting in a scene and generates an image of that scene from the view point of a camera also described in the text file. Ray tracing is not a fast process by any means, (the generation of a complex image can take several hours) but it produces very high quality images with realistic reflections, shading, perspective, and other effects.
smpeg
0.4.5
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
SMPEG is based on UC Berkeley's mpeg_play software MPEG decoder and SPLAY, an mpeg audio decoder created by Woo-jae Jung. We have completed the initial work to wed these two projects in order to create a general purpose MPEG video/audio player.
mpg123
1.25.10
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The mpg123 distribution contains an MPEG 1.0/2.0/2.5 audio player/decoder for layers 1, 2 and 3 (most commonly MPEG 1.0 Layer 3 aka MP3), as well as re-usable decoding and output libraries.

Libraries include -mfastcall variants
libtheora
1.1.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Theora is a free and open video compression format from the Xiph.org Foundation. Like all our multimedia technology it can be used to distribute film and video online and on disc without the licensing and royalty fees or vendor lock-in associated with other formats.

Libraries include -mfastcall variants
ping
20190714
Original sources:
MiNT patch:
Build script:
Binary Package:
The ping command.
Ported from BSD sources.
libmad
0.15.1b
Original sources:
MiNT patch:
Build script:
Devel Package:
MAD is a MPEG audio decoder. It currently supports MPEG-1 and the MPEG-2 extension to Lower Sampling Frequencies, as well as the so-called MPEG 2.5 format. All three audio layers (Layer I, Layer II, and Layer III a.k.a. MP3) are implemented.
MAD supports 24-bit PCM output. MAD computes using 100% fixed-point (integer) computation, so you can run it without a floating point unit.

Libraries include -mfastcall variants
gnucobol
3.0rc1
Original sources:
MiNT patch:
Build script:
Binary Package:
GnuCOBOL (formerly OpenCOBOL) is a COBOL compiler. cobc translates COBOL to executable using intermediate C sources, providing full access to nearly all C libraries.
Note: this is not a cross-compiler. Do not install these on a cross-development environment.
zstd
1.5.5
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Zstd, short for Zstandard, is a lossless compression algorithm. Speed vs. compression trade-off is configurable in small increments. Decompression speed is preserved and remains roughly the same at all settings, a property shared by most LZ compression algorithms, such as zlib or lzma.

At roughly the same ratio, zstd (v1.4.0) achieves ~870% faster compression than gzip. For roughly the same time, zstd achives a ~12% better ratio than gzip. LZMA outperforms zstd by ~10% faster compression for the same ratio, or ~1-4% size reduction for same time.

Libraries include -mfastcall variants
dosfstools
4.1+git
GitHub repository:
Original sources:
Build script:
Binary Package:
The dosfstools package includes the mkdosfs and dosfsck utilities, which respectively make and check MS-DOS FAT file systems on hard drives or on floppies.
opkg
0.6.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Opkg is a lightweight distribution package manager, optimized for embedded applications and static image generation.
tree
1.8.0
Original sources:
MiNT patch:
Build script:
Binary Package:
Tree is a recursive directory listing command that produces a depth indented listing of files, which is colorized ala dircolors if the LS_COLORS environment variable is set and output is to tty.
libxmp
4.6.0
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Libxmp is a library that renders module files to PCM data. It supports over 90 mainstream and obscure module formats including Protracker (MOD), Scream Tracker 3 (S3M), Fast Tracker II (XM), and Impulse Tracker (IT).

Many compressed module formats are supported, including popular Unix, DOS, and Amiga file packers including gzip, bzip2, SQSH, Powerpack, etc.
Contains small optimizations from mikrosk.

Libraries include -mfastcall variants
libxmp-lite
4.6.0
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Lite version of Libxmp.

Libraries include -mfastcall variants
asap
5.0.1
Original sources:
Build script:
Devel Package:
Binary Package:
ASAP is a player of Atari 8-bit chiptunes for modern computers and mobile devices. It emulates the POKEY sound chip and the 6502 processor. The project was initially based on the routines from the Atari800 emulator, but the current version has an original emulation core.
p7zip
16.02
Original sources:
MiNT patch:
Build script:
Binary Package:
p7zip is a quick port of 7z.exe and 7za.exe (command line version of 7zip, see www.7-zip.org) for Unix. 7-Zip is a file archiver with highest compression ratio. Since 4.10, p7zip (like 7-zip) supports little-endian and big-endian machines.

This package provides:
* 7za - a stand-alone executable (handles less archive formats than 7z)
* p7zip - a gzip-like wrapper around 7zr/7za
netpbm
10.91.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
These are the Portable Bitmap Plus Utilities.

This package provides tools for graphics conversion. Using these tools, images can be converted from virtually any format into any other format. A few of the supported formats include: GIF, PC-Paintbrush, IFF ILBM, Gould Scanner file, MTV ray tracer, Atari Degas .pi1 and .pi3, Macintosh PICT, HP Paintjet file, QRT raytracer, AUTOCAD slide, Atari Spectrum (compressed and uncompressed), Andrew Toolkit raster object, and many more. On top of that, man pages are included for all tools.
mksh
57
Original sources:
MiNT patch:
Build script:
Binary Package:
The MirBSD Korn Shell is an actively developed free implementation of the Korn Shell programming language and a successor to the Public Domain Korn Shell (pdksh).
cpio
2.13
Original sources:
MiNT patch:
Build script:
Binary Package:
GNU cpio is a program to manage archives of files. Cpio copies files into or out of a cpio or tar archive. An archive is a file that contains other files plus information about them, such as their pathname, owner, time stamps, and access permissions. The archive can be another file on the disk, a magnetic tape, or a pipe.
libwebp
1.3.2
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
WebP codec is a library to encode and decode images in WebP format. This package contains the library that can be used in other programs to add WebP support, as well as the command line tools 'cwebp' and 'dwebp' to compress and decompress images respectively.

Original MiNT-Patch by medmed.
pth
2.0.7
Original sources:
MiNT patch:
Build script:
Devel Package:
Pth is a very portable POSIX/ANSI-C based library for Unix platforms which provides non-preemptive priority-based scheduling for multiple threads of execution (aka ``multithreading'') inside event-driven applications. All threads run in the same address space of the server application, but each thread has it's own individual program-counter, run-time stack, signal mask and errno variable.

The thread scheduling itself is done in a cooperative way, i.e., the threads are managed by a priority- and event-based non-preemptive scheduler. The intention is that this way one can achieve better portability and run-time performance than with preemptive scheduling. The event facility allows threads to wait until various types of events occur, including pending I/O on filedescriptors, asynchronous signals, elapsed timers, pending I/O on message ports, thread and process termination, and even customized callback functions.

Original MiNT-Patch by Patrice Mandin & medmed.

Libraries include -mfastcall variants
libyuv
1837
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
libyuv is an open source project that includes YUV scaling and conversion functionality.

You need to use g++ to link against this library.
openh264
2.3.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
OpenH264 is a codec library which supports H.264 encoding and decoding. It is suitable for use in real time applications such as WebRTC. See http://www.openh264.org/ for more details.

Needs the pth library from above.
You need to use g++ to link against this library.
Original MiNT-Patch by medmed.
A simple GEM example can be found in this thread
fdk-aac
2.0.2
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
A standalone library of the Fraunhofer FDK AAC code from Android.
mp4v2
2.1.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The MP4v2 library provides an API to create and modify MP4 files as defined by ISO-IEC:14496-1:2001 MPEG-4 Systems. This file format is derived from Apple's QuickTime file format that has been used as a multimedia file format in a variety of platforms and applications. It is a very powerful and extensible format that can accommodate practically any type of media.
libsndfile
1.1.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
libsndfile is a C library for reading and writing files containing sampled audio data.
zita-resampler
1.8.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Libzita-resampler is a C++ library for resampling audio signals. It is designed to be used within a real-time processing context, to be fast, and to provide high-quality sample rate conversion.

The library operates on signals represented in single-precision floating point format. For multichannel operation both the input and output signals are assumed to be stored as interleaved samples.

The API allows a trade-off between quality and CPU load. For the latter a range of approximately 1:6 is available. Even at the highest quality setting libzita-resampler will be faster than most similar libraries, e.g. libsamplerate.

The source distribution includes the resample application. Input format is any file readable by libsndfile, output is either WAV (WAVEX for more than 2 channels) or CAF. Apart from resampling you can change the sample format to 16-bit, 24-bit or float, and for 16-bit output, add dithering. Available dithering types are rectangular, triangular, and Lipschitz' optimised error feedback filter. Some examples of dithering can be seen here.
wolfssl
5.7.0
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
The wolfSSL embedded TLS library is a lightweight, portable, C-language-based SSL/TLS library targeted at IoT, embedded, and RTOS environments primarily because of its size, speed, and feature set. It works seamlessly in desktop, enterprise, and cloud environments as well. wolfSSL supports industry standards up to the current TLS 1.3 and DTLS 1.3, is up to 20 times smaller than OpenSSL, offers a simple API, an OpenSSL compatibility layer, OCSP and CRL support, is backed by the robust wolfCrypt cryptography library, and much more.
libde265
1.0.9
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
libde265 is an open source implementation of the h.265 video codec. It is written from scratch and has a plain C API to enable a simple integration into other software.


Needs the pth library from above.
You need to use g++ to link against this library.

Original MiNT-Patch contributed by medmed.
x265
3.5
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
x265 is a free library for encoding next-generation H265/HEVC video streams.
libheif
1.14.2
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
libheif is an ISO/IEC 23008-12:2017 HEIF and AVIF (AV1 Image File Format) file format decoder and encoder.
HEIF and AVIF are new image file formats employing HEVC (h.265) or AV1 image coding, respectively, for the best compression ratios currently possible.
libheif makes use of libde265 for HEIF image decoding and x265 for encoding. For AVIF, libaom, dav1d, svt-av1, or rav1e are used as codecs.
mtm
1.2.1
GitHub repository:
Original sources:
MiNT patch:
Build script:
Binary Package:
mtm is the Micro Terminal Multiplexer, a terminal multiplexer.

Original MiNT-Patch contributed by medmed.
man
1.5g
Original sources:
MiNT patch:
Build script:
Binary Package:
The man package includes three tools for finding information and/or documentation about your Linux system: man, apropos and whatis. The man system formats and displays on-line manual pages about commands or functions on your system. Apropos searches the whatis database (containing short descriptions of system commands) for a string. Whatis searches its own database for a complete word.

The man package should be installed on your system because it is the primary way for finding documentation.
help2man
1.49.3
Original sources:
Build script:
Package:
help2man is a script to create simple man pages from the --help and --version output of programs.

Since most GNU documentation is now in info format, this provides a way to generate a placeholder man page pointing to that resource while still providing some useful information.
sed
4.9
Original sources:
MiNT patch:
Build script:
Binary Package:
Sed takes text input, performs one or more operations on it, and outputs the modified text. Sed is typically used for extracting parts of a file using pattern matching or for substituting multiple occurrences of a string within a file.
traceroute
1.4a5
Original sources:
MiNT patch:
Build script:
Binary Package:
The traceroute utility displays the route used by IP packets on their way to a specified network (or Internet) host. Traceroute displays the IP number and host name (if possible) of the machines along the route taken by the packets. Traceroute is used as a network debugging tool. If you're having network connectivity problems, traceroute will show you where the trouble is coming from along the route.

Install traceroute if you need a tool for diagnosing network connectivity problems.
x3270
4.2ga9
Original sources:
MiNT patch:
Build script:
Binary Package:
This package contains a family of IBM 3270 mainframe terminal emulators:

* terminal emulators for interactive use x3270 X Window System c3270 curses based
* terminal emulators for scripted use s3270 see the x3270-script man page tcl3270 Tcl based
* printer emulator pr3287
x3270 is an IBM 3270 terminal emulator for the X Window System. x3270 runs over a telnet connection (with or without TN3270E) and emulates either an IBM 3279 (color) or 3278 (monochrome). It supports APL2 characters, IND$FILE file transfer, NVT mode, a pop-up keypad for 3270-specific keys, alternative keymaps, 3287 printer sessions, and a scrollbar and has extensive debugging and scripting facilities.
x3270a is a script that computes the correct font sizes for higher-resolution displays, then runs x3270. (x3270 handles scaling of visual elements automatically, but it cannot adjust the font sizes by itself.)
b3270 is a generic back-end for 3270 emulators. It implements the 3270 protocol and host input/output, and communicates with a front end application using a simple XML-based protocol.
c3270 is the curses-based version of x3270. It runs on any dumb terminal (an xterm or a console, for example), and supports (almost) all of the x3270 features. c3270 scripts are compatible with x3270 scripts, and the subset of command line options and resource definitions are also compatible.
s3270 is a scripting-only version of x3270. This program is intended primarily for writing "screen-scraping" applications, for example a CGI back-end script that retrieves database information from a mainframe.

Notice: Undefined index: upstream in /home/www/crossmint.php on line 694
wget
1.21.3
Original sources:
MiNT patch:
Build script:
Binary Package:
Wget enables you to retrieve WWW documents or FTP files from a server. This can be done in script files or via the command line.
physfs
3.2.0
Original sources:
MiNT patch:
Build script:
Devel Package:
PhysicsFS is a library to provide abstract access to various archives. It is intended for use in video games, and the design was somewhat inspired by Quake 3's file subsystem. The programmer defines a "write directory" on the physical filesystem. No file writing done through the PhysicsFS API can leave that write directory, for security. For example, an embedded scripting language cannot write outside of this path if it uses PhysFS for all of its I/O, which means that untrusted scripts can run more safely. Symbolic links can be disabled as well, for added safety. For file reading, the programmer lists directories and archives that form a "search path". Once the search path is defined, it becomes a single, transparent hierarchical filesystem. This makes for easy access to ZIP files in the same way as you access a file directly on the disk, and it makes it easy to ship a new archive that will override a previous archive on a per-file basis. Finally, PhysicsFS gives you platform-abstracted means to determine if CD-ROMs are available, the user's home directory, where in the real filesystem your program is running, etc.
libedit
20230828-3.1
Original sources:
MiNT patch:
Build script:
libedit is a command line editing and history library. It is designed to be used by interactive programs that allow the user to type commands at a terminal prompt.
dash
0.5.12
Original sources:
MiNT patch:
Build script:
Binary Package:
DASH is a POSIX-compliant implementation of /bin/sh that aims to be as small as possible without sacrificing speed where possible.
xpdf
4.04
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
The Xpdf open source project includes a PDF viewer along with a collection of command line tools which perform various functions on PDF files.
libaacplus
2.0.2
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
3GPP released reference implementation of 3GPP AAC Advanced Audio - (HE-AAC+) Encoder (3GPP TS 26.410 V8.0.0).
Original MiNT-Patch by medmed.
a52dec
0.8.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
liba52 is a library for decoding ATSC A/52 streams.

Libraries include -mfastcall variants
pixman
0.42.2
Original sources:
MiNT patch:
Build script:
Devel Package:
Pixman is a pixel manipulation library for X and cairo.
cairo
1.18.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Cairo is a vector graphics library with cross-device output support. Currently supported output targets include the X Window System, in-memory image buffers, and PostScript. Cairo is designed to produce identical output on all output media while taking advantage of display hardware acceleration when available.
libaom
3.7.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
This is a library for AOMedia Video 1 (AV1), an open, royalty-free video coding format designed for video transmissions over the Internet.
opus
1.4
Original sources:
MiNT patch:
Build script:
Devel Package:
The Opus codec is designed for interactive speech and audio transmission over the Internet. It is designed by the IETF Codec Working Group and incorporates technology from Skype's SILK codec and Xiph.Org's CELT codec.
lame
3.100
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
LAME is an educational tool to be used for learning about MP3 encoding. The goal of the LAME project is to use the open source model to improve the psycho acoustics, noise shaping and speed of MP3. Another goal of the LAME project is to use these improvements for the basis of a patent free audio compression codec for the GNU project.
libvpx
1.13.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
WebM is an open, royalty-free, media file format designed for the web.
WebM defines the file container structure, video and audio formats. WebM files consist of video streams compressed with the VP8 video codec and audio streams compressed with the Vorbis audio codec. The WebM file structure is based on the Matroska container.

Libraries include -mfastcall variants
x264
20230215
Original sources:
MiNT patch:
Build script:
Devel Package:
x264 package provides a library for encoding video streams into the H.264/MPEG-4 AVC format.

Needs the pth library from above.
fribidi
1.0.13
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
This library implements the algorithm as described in "Unicode Standard Annex #9, the Bidirectional Algorithm, http://www.unicode.org/unicode/reports/tr9/". FriBidi is tested against the Bidi Reference Code and, to the best of the developers' knowledge, does not contain any conformance bugs.
The API was inspired by the document "Bi-Di languages support - BiDi API proposal" by Franck Portaneri, which he wrote as a proposal for adding BiDi support to Mozilla.

Libraries include -mfastcall variants
graphite2
1.3.14
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Graphite2 is a project within SIL's Non-Roman Script Initiative and Language Software Development groups to provide rendering capabilities for complex non-Roman writing systems. Graphite can be used to create "smart fonts" capable of displaying writing systems with various complex behaviors. With respect to the Text Encoding Model, Graphite handles the "Rendering" aspect of writing system implementation.
lcms2
2.15
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Littlecms is a small speed optimized color management engine. Little CMS intends to be a small-footprint color management engine with a special focus on accuracy and performance. It uses the International Color Consortium standard (ICC), which is the modern standard when regarding to color management. The ICC specification is widely used and is referred to in many International and other de-facto standards.
faad2
2.10.1
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
FAAD2 is a HE, LC, MAIN and LTP profile, MPEG2 and MPEG-4 AAC decoder. FAAD2 includes code for SBR (HE AAC) decoding. FAAD2 is licensed under the GPL.
ffmpeg
6.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
FFmpeg is a multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play several formats that humans and machines have created.
ffmpeg
7.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
FFmpeg is a multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play several formats that humans and machines have created.
SDL_gfx
2.0.26
Original sources:
MiNT patch:
Build script:
Devel Package:
The SDL_gfx library evolved out of the SDL_gfxPrimitives code which provided basic drawing routines such as lines, circles or polygons and SDL_rotozoom which implemented a interpolating rotozoomer for SDL surfaces. The current components of the SDL_gfx library are:
  • Graphic Primitives (SDL_gfxPrimitves.h)
  • Rotozoomer (SDL_rotozoom.h)
  • Framerate control (SDL_framerate.h)
  • MMX image filters (SDL_imageFilter.h)
The library is backwards compatible to the above mentioned code. It is written in plain C and can be used in C++ code.

Libraries include -mfastcall variants
SDL_sound
1.0.4
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
SDL_sound is a library that handles the decoding of several popular sound file formats, such as .WAV and .MP3. It is meant to make the programmer's sound playback tasks simpler. The programmer gives SDL_sound a filename, or feeds it data directly from one of many sources, and then reads the decoded waveform data back at their leisure. If resource constraints are a concern, SDL_sound can process sound data in programmer-specified blocks. Alternately, SDL_sound can decode a whole sound file and hand back a single pointer to the whole waveform. SDL_sound can also handle sample rate, audio format, and channel conversion on-the-fly and behind-the-scenes, if the programmer desires.

Libraries include -mfastcall variants
sqlite3
3.44.2
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
SQLite is a C library that implements an embeddable SQL database engine. Programs that link with the SQLite library can have SQL database access without running a separate RDBMS process.
SQLite is not a client library used to connect to a big database server. SQLite is a server and the SQLite library reads and writes directly to and from the database files on disk.
SQLite can be used via the sqlite command line tool or via any application that supports the Qt database plug-ins.
fltk
1.3.9
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
The Fast Light Tool Kit ("FLTK", pronounced "fulltick") is a cross-platform C++ GUI toolkit for for the X Window System), Microsoft® Windows®, and macOS®. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL® and its built-in GLUT emulation. It was originally developed by Mr. Bill Spitzak and is currently maintained by a small group of developers across the world with a central repository on GitHub.

Note: You'll need the X11-Libaries to compile FLTK applications for Atari, and a X-Server to run them.
dillo
3.1-dev
GitHub repository:
Original sources:
MiNT patch:
Build script:
Binary Package:
Dillo is a minimalistic web browser particularly intended for older or slower computers and embedded systems. It supports only plain HTML/XHTML (with CSS rendering) and images over HTTP; scripting is ignored entirely. Current versions of Dillo can run on Linux, BSD, OS X, IRIX and Cygwin. Due to its small size, it is the browser of choice in several space-conscious Linux distributions.

Note: You'll need a X-Server to run it.
ntp
4.2.8p17
Original sources:
MiNT patch:
Build script:
Binary Package:
The Network Time Protocol (NTP) is used to synchronize the time of a computer client or server to another server or reference time source, such as a radio, satellite receiver, or modem.

Ntpd is an operating system daemon that sets and maintains the system time-of-day synchronized with Internet standard time servers.
meson
1.4.0
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Meson is a build system designed to optimise programmer productivity. It aims to do this by providing support for software development tools and practices, such as unit tests, coverage reports, Valgrind, CCache and the like. Supported languages include C, C++, Fortran, Java, Rust. Build definitions are written in a non-turing complete Domain Specific Language.

Requires python3 >= 3.7

Note: the meson-dev package just contains the cross configuration files. Use them with `meson setup --crossfile m68k-atari-mint.ini`
ninja
1.11.1
Original sources:
MiNT patch:
Build script:
Binary Package:
Ninja is yet another build system. It takes as input the interdependencies of files (typically source code and output executables) and orchestrates building them, quickly.
brotli
1.1.0
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Brotli is a generic-purpose lossless compression algorithm that compresses data using a combination of a modern variant of the LZ77 algorithm, Huffman coding and 2nd order context modeling, with a compression ratio comparable to the best currently available general-purpose compression methods. It is similar in speed with deflate but offers more dense compression.
ncompress
5.0
GitHub repository:
Original sources:
Build script:
Binary Package:
Compress is a fast, simple LZW file compressor. Compress does not have the highest compression rate, but it is one of the fastest programs to compress data. Compress is the defacto standard in the UNIX community for compressing files.
(N)compress 4.2 introduced a special, fast compression hash algorithm. This algorithm uses more memory than the old hash table. If you don't want the faster hash table algorithm set 'Memory free for compress' below 800000.
lynx
2.9.1
GitHub repository:
Original sources:
MiNT patch:
Build script:
Binary Package:
Lynx is a fully-featured World Wide Web (WWW) client for users running cursor-addressable, character-cell display devices (e.g., vt100 terminals, vt100 emulators running on PCs or Macs, or any other character-cell display). It will display Hypertext Markup Language (HTML) documents containing links to files on the local system, as well as files on remote systems running http, gopher, ftp, wais, nntp, finger, or cso/ph/qi servers, and services accessible via logins to telnet, tn3270 or rlogin accounts (see URL Schemes Supported by Lynx). Current versions of Lynx run on Unix, VMS, Windows3.x/9x/NT and later, 386DOS and OS/2 EMX.
mbedtls
3.6.0
GitHub repository:
Original sources:
MiNT patch:
Build script:
Devel Package:
Binary Package:
Mbed TLS is a C library that implements cryptographic primitives, X.509 certificate manipulation and the SSL/TLS and DTLS protocols. Its small code footprint makes it suitable for embedded systems.
Mbed TLS includes a reference implementation of the PSA Cryptography API. This is currently a preview for evaluation purposes only.
tnftp
20230507
GitHub repository:
Original sources:
MiNT patch:
Build script:
Binary Package:
tnftp is the FTP (File Transfer Protocol) client from NetBSD. FTP is a widely used protocol for transferring files over the Internet and for archiving files. tnftp provides some advanced features beyond the Linux netkit ftp client, but maintains a similar user interface to the traditional ftp client. It was formerly called lukemftp.

Known Bugs

Changelog

More information

See Vincent Rivière's site for a history of his packages.

Feel free to send me your comments!

Thorsten Otto

Links

Vincent Rivière has made similar scripts available for several years. His work is available here.

Patrice Mandin has done a lot of work for porting GCC and the binutils to the MiNT platform. His work is available here.

Olivier Landemarre has made his own port of GCC 4.2 to the MiNT platform. He also has a great list of Atari-related stuff.

François Le Coat is the author of the ATARI Search Engine.

Thomas Huth is the author of the Hatari ST emulator.

Keith Scroggins has ported ScummVM to MiNT. Build instructions are available here. He also made his own native port of GCC 4.0.1 several years before me; his work is available here.

Miro Kropáček has compiled the GCC 4.6.4 port for the MiNT host. That means you can run the latest GCC natively on your Atari/MiNT computer, without cross-compilation! He also made a nice Makefile for building all the toolchain. His work is available here.

Paweł Góralski has ported REminiscence to Falcon using this compiler. It is an interpreter for Delphine Software games, enabling to play Flashback on Falcon. He also maintains the Bus Error Wiki with a lot of programming tricks using these cross-tools.

Mark Duckworth has built an RPM package for native MiNT binutils, using the patch available on this page. He has compiled natively a lot of other RPM packages, his work is available here.

Dominique Béréziat has written a tutorial for cross-compiling GEM applications.

Philipp Donzé has built the binaries of an older version of these cross-tools for MacOS X (Intel and PowerPC supported). His binaries as well as installation instructions are available here.

Rolf Hemmerling has a nice page about the current Atari resources on the web.

DML has a nice page about Atari and engineering.

Peter Dassow has a nice page with a lot of links to ST software.

George Nakos used the cross-tools for his raptorBASIC+.

Jookie uses the cross-tools for developing CosmosEx software. CosmosEx is a hardware extension as small as a floppy drive which brings SD-Card, USB, Ethernet and much more to Atari computers.


Last updated:


Home