mirror of
https://github.com/netsurf-browser/netsurf
synced 2024-11-26 00:09:41 +03:00
112 lines
2.7 KiB
Markdown
112 lines
2.7 KiB
Markdown
Quick Build Steps for NetSurf
|
|
=============================
|
|
|
|
Last Updated: 24 February 2015
|
|
|
|
This document provides steps for building NetSurf.
|
|
|
|
|
|
Grab a temporary env.sh
|
|
-----------------------
|
|
|
|
$ wget http://git.netsurf-browser.org/netsurf.git/plain/docs/env.sh
|
|
$ source env.sh
|
|
|
|
|
|
Install any packages you need
|
|
-----------------------------
|
|
|
|
Installs all packages required to build NetSurf and the NetSurf project
|
|
libraries.
|
|
|
|
$ ns-package-install
|
|
|
|
If your package manager is not supported, you will have to install third
|
|
party packages manually.
|
|
|
|
|
|
Get the NetSurf project source code from Git
|
|
--------------------------------------------
|
|
|
|
$ ns-clone
|
|
|
|
|
|
Build and install our project libraries
|
|
---------------------------------------
|
|
|
|
Updates NetSurf project library sources to latest, builds and installs them.
|
|
|
|
$ ns-pull-install
|
|
|
|
|
|
Switch to new NetSurf workspace
|
|
-------------------------------
|
|
|
|
Remove the bootstrack script and use the newly installed one
|
|
|
|
$ rm env.sh
|
|
$ cd ~/dev-netsurf/workspace
|
|
$ source env.sh
|
|
|
|
|
|
Build and run NetSurf
|
|
---------------------
|
|
|
|
$ cd netsurf
|
|
|
|
To build the native front end (the GTK front end on Linux, BSDs, etc) you
|
|
could do:
|
|
|
|
$ make
|
|
$ ./nsgtk
|
|
|
|
To build the framebuffer front end, you could do:
|
|
|
|
$ make TARGET=framebuffer
|
|
$ ./nsfb
|
|
|
|
|
|
Cross Compiling
|
|
===============
|
|
|
|
If you are cross compiling, you can follow the above steps, but when
|
|
sourcing env.sh, you should set HOST environment variable to the
|
|
appropriate triplet for your cross compiler. For example, to cross
|
|
compile for RISC OS:
|
|
|
|
$ HOST=arm-unknown-riscos source env.sh
|
|
|
|
After that, the commands such as `ns-package-install` and
|
|
`ns-pull-install` will do what is appropriate for the platform you
|
|
are building for.
|
|
|
|
To do the final build of NetSurf, pass the appropriate TARGET to make.
|
|
For example, to cross compile for RISC OS:
|
|
|
|
$ make TARGET=riscos
|
|
|
|
Finally, you can package up your build to transfer to the system you
|
|
are developing for. For example, to produce a package for RISC OS:
|
|
|
|
$ make TARGET=riscos package
|
|
|
|
Getting a cross compiler set up
|
|
-------------------------------
|
|
|
|
We maintain cross compilation environments and an SDK for a number of
|
|
platforms. These may be found in our toolchains repository.
|
|
|
|
$ git clone git://git.netsurf-browser.org/toolchains
|
|
|
|
Pre-built versions of the toolchains for Debian systems are often available
|
|
via our [automated build and test infrastructure](http://ci.netsurf-browser.org/builds/toolchains/)
|
|
|
|
|
|
Not working?
|
|
============
|
|
|
|
If the above steps are inapplicable, or don't work, you can build manually.
|
|
Follow the instructions in the BUILDING-* documents in the docs/ directory
|
|
the NetSurf browser source tree.
|
|
|