[[!meta title="Documentation/BuildingForAmigaOS"]] [[!meta author="Chris"]] [[!meta date="2016-06-27T19:13:10Z"]] [[!toc]] Building NetSurf for AmigaOS 3.5+ (m68k-unknown-amigaos) ======================================================== Rough notes on how to build NetSurf for AmigaOS 3.5+. There may be an easier way, but this works for me! Building for AmigaOS 4.x (ppc-amigaos) is similar. Toolchain --------- Toolchain is built using something like this: `git clone `[`git://git.netsurf-browser.org/toolchains.git`](git://git.netsurf-browser.org/toolchains.git) `cd ./toolchains/m68k-unknown-amigaos` `sudo make` `cd ../sdk` `sudo GCCSDK_INSTALL_CROSSBIN=/opt/netsurf/m68k-unknown-amigaos/cross/bin GCCSDK_INSTALL_ENV=/opt/netsurf/m68k-unknown-amigaos/env make` Libraries --------- Make/install buildsystem first! Build in this approx order: buildsystem, libnslog, libnspsl, libnsgif, libnsbmp, libwapcaplet, libparserutils, libhubbub, libdom, libcss, libsvgtiny, libnsutils, libutf8proc Clone and build the libraries with: `make HOST=m68k-unknown-amigaos PREFIX=/opt/netsurf/m68k-unknown-amigaos/env` `sudo make HOST=m68k-unknown-amigaos PREFIX=/opt/netsurf/m68k-unknown-amigaos/env install` Finally build nsgenbind for the host, not for OS3. It will install in /opt/netsurf/bin, add that to the path so make will find it later, or symlink /usr/bin/nsgenbind. NetSurf ------- Build NetSurf with `make TARGET=amigaos3` Building under Cygwin ===================== Cygwin is a bit troublesome, as the toolchain setup is designed for Debian 64-bit. Cygwin apparently works but there are two changes required (I know nothing about these changes beyond what's here): - c-parse.in: I must replace two occurrences of YYLEX by yylex() - collect2.c: I must add 0666 as parameter of the open for redir\_handle. There is a script to build NetSurf for AmigaOS3 under Cygwin here: