From 703427a48612bf98fba599dfcd6e91485efd5b77 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Fri, 9 Jun 2017 17:28:55 +0100 Subject: Update documentation removing junk and moving to markdown for most text files --- docs/building-Windows.md | 203 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 203 insertions(+) create mode 100644 docs/building-Windows.md (limited to 'docs/building-Windows.md') diff --git a/docs/building-Windows.md b/docs/building-Windows.md new file mode 100644 index 000000000..dc6769fdf --- /dev/null +++ b/docs/building-Windows.md @@ -0,0 +1,203 @@ +-------------------------------------------------------------------------------- + Build Instructions for Windows NetSurf 13 February 2010 +-------------------------------------------------------------------------------- + + This document provides instructions for building the Windows version + of NetSurf and provides guidance on obtaining NetSurf's build + dependencies. + + Windows NetSurf has been tested on Wine and Vista. + + + Building and executing NetSurf +================================ + + The windows netsurf port uses the MinGW (Minimal GNU on Windows) + system as its build infrastructure. This allows the normal netsurf + build process to be used. + + The method outlined here to create executables cross compiles + windows executable from a Linux OS host. + + First of all, you should examine the contents of Makefile.defaults + and enable and disable relevant features as you see fit by creating + a Makefile.config file. Some of these options can be automatically + detected and used, and where this is the case they are set to such. + Others cannot be automatically detected from the Makefile, so you + will either need to install the dependencies, or set them to NO. + + You should then obtain NetSurf's dependencies, keeping in mind which + options you have enabled in the configuration file. See the next + section for specifics. + + Once done, to build windows NetSurf on a UNIX-like platform, simply run: + + $ export MINGW_PREFIX=i586-mingw32msvc- + $ export MINGW_INSTALL_ENV=/usr/i586-mingw32msvc/ + $ make TARGET=windows + + If that produces errors, you probably don't have some of NetSurf's + build dependencies installed. See "Obtaining NetSurf's dependencies" + below. Or turn off the complaining features in a Makefile.config + file. You may need to "make clean" before attempting to build after + installing the dependencies. + + You will need the libgnurx-0.dll from /usr/i586-mingw32msvc/bin/ + copied next to the exe and the windows/res directory available, also + next to the executable. + + Run NetSurf by executing it: + + $ wine NetSurf.exe + + The staticaly linked binary which is generated may be several + megabytes in size, this can be reduced by stripping the binary. + + $ i586-mingw32msvc-strip NetSurf.exe + + + Obtaining NetSurf's build dependencies +======================================== + + Package installation +---------------------- + + Debian-based OS: + + The mingw cross compilation tools are required. These can be + installed as pakages on Debian/Ubuntu systems: + + $ sudo apt-get install mingw32 mingw32-binutils mingw32-runtime + + These provide a suitable set of compilers and headers including the win32 API. + + The includes and associated libraries are installed in + /usr/i586-mingw32msvc/ Which is where the build system will include + files from by default. The packages at time of writing only target + 32bit windows builds. + + Other: + + For other OS the apropriate packages and environment must be installed. + + pkg-config +------------ + + A pkg-config wrapper script is required to make things easier + +cat > /usr/i586-mingw32msvc/bin/pkg-config <