vbcc logo

vbcc is a highly optimizing portable and retargetable ISO C compiler. It supports ISO C according to ISO/IEC 9899:1989 and a subset of the new standard ISO/IEC 9899:1999 (C99).

This is the support site for Amiga (AmigaOS, MorphOS) and Atari (TOS, MiNT, Jaguar).

vbcc main
Downloading instructions
Current vbcc binary archives
Current vbcc target archives
vbcc 0.9h release
vbcc 0.9g release
vbcc 0.9f release
vbcc 0.9e release
vbcc 0.9d release
vbcc 0.9b release
vbcc 0.9a release
vbcc 0.9 release
vbcc 0.8j release
vbcc 0.8i release
vbcc 0.8h release
vbcc 0.8g release
Old vbcc releases (0.8-0.8f)

vbcc docs (pdf)

vbcc home page
17-Mar-2005: vbcc 0.8h patch 1.

vbcc_bin_warpos.lha erroneously contained executables without _wos extension, overwriting the 68k-native executables in your installation.

The WarpOS-native vlink was broken and generated corrupt output.

vbcc_bin_warpos.lha Fixed WarpOS binary archive.

28-Jan-2005: vbcc 0.8h release.
Changes since last release:
  • M68k code generator: Fixed -O2 optimizer bug with switch statements.
  • Any register can be selected to hold a function's return value.
  • Preprocessor (ucpp) supports the #warning directive.
  • Improved linker script for OS4: allows linking with CODE, DATA, BSS and unnamed sections (from 68k hunk objects). Fixed _LinkerDB definition.
  • M68k- and MorphOS-headers must not contain inline code for MUI_NewObject(), which confuses the preprocessor.
  • vclib: Improved precision for ASCII to floating point conversions in vfscanf().
  • vclib: A set error indicator in the stream no longer blocks further read/write/seek operations.
  • vsend crashed when trying to break with ctrl-c.
  • vasm: Fixed problem with small data mode and 68k hunk objects.
  • vasm's new option -opt-fconst automatically optimizes float constants to a lower precision when possible. Enabled this in vbcc's 68k config files.
  • vlink bug fixes: PHDR definition, 64k segment alignment for PPC/ELF, absolute symbols in hunk format, etc.
  • other things I forgot...
In such a complex project there will of course be bugs. Most, especially serious, bug fixes will be available immediately as a patch. The rest comes with the next release, or by request from the author (see below).
Downloading vbcc 0.8h.

You need to pick the appropriate binary archive for your host platform. Then you can add as many target archives as you need.

Example: If you own a Pegasos running MorphOS and would like to develop programs for MorphOS and AmigaOS/68k, you have to pick the vbcc_bin_morphos archive for the binaries as well as the target archives vbcc_target_ppc-morphos and vbcc_target_m68k-amigaos. Install the binary archive first, using the provided Amiga installer, then add the targets.

The PowerUp and WarpOS binary archives are additional, which means that you need to have a base binary archive already installed. Typically this would be the vbcc_bin_amigaos68k archive.

All target archives are lha-packed, while the Atari targets are also available as zip-archives to make unpacking easier for Atari users.

Other host platforms. vbcc is portable enough to run under all operating systems which offer a working ANSI-C compiler, e.g. BSD, Linux, MacOS and Windows. If you need a port for your system, try to contact the authors.

vbcc_bin_amigaos68k.lha AmigaOS 2.x/3.x 68020+ binaries.
vbcc_bin_amigaosppc.lha AmigaOS 4.x binaries.
vbcc_bin_morphos.lha MorphOS binaries.
vbcc_bin_powerup.lha Additional PowerUp binaries. For use under AmigaOS/68k.
vbcc_bin_warpos.lha Additional WarpOS binaries. For use under AmigaOS/68k.
vbcc_target_m68k-amigaos.lha Compiler target AmigaOS 2.x/3.x M680x0.
vbcc_target_ppc-amigaos.lha Compiler target AmigaOS 4.x PowerPC.
Warning! Make sure your amiga_compiler.h from the official OS4 SDK is up to date! Line 266 and 267 have to look like this:
#define APICALL __aos4libcall __linearvarargs
#define VARARGS68K __linearvarargs
vbcc_target_ppc-morphos.lha Compiler target MorphOS PowerPC.
vbcc_target_ppc-powerup.lha Compiler target PowerUp PowerPC.
vbcc_target_ppc-warpos.lha Compiler target WarpOS PowerPC.

Please support vbcc by contacting the authors if you find any bugs or problems. Supporting nine different architectures makes testing extremely time consuming, so this release is probably not free of bugs.

For problems with the compiler core contact Dr. Volker Barthelmann (vbemail), and for Amiga/Atari-specific problems, including assembler, linker, startup-codes and linker-libraries, contact Frank Wille (fwemail).

$Id: index.php,v 1.26 2023/09/30 11:59:02 frank Exp $