NSLU2-Linux
view · edit · print · history

This has been obsoleted by Openslug 2.3. Please use the MasterMakefile.

Building OpenSlug-2.0 From Source

To build OpenSlug from source first download the source from the OpenSlug web site. The source is contained in a single tar(1) archive compressed with gzip(1).

Building the source has been tested extensively on Linux based operating systems, particularly on i386 processors. Builds on other operating systems which support POSIX 1003 commands should be possible but have not been tested. It may be necessary to build and install GNU variants of some standard tools. See the Build Requirements section below.

  1. Install Python 2.3 or later. If Python is not available for your operating system you may be able to use the Python source code.
  2. Uncompress and extract the tar archive into an appropriate directory. The build will require 5GBytes of disk space. The tar archive does not create a single sub-directory - so make an appropriate sub-directory and extract into that.
  3. Rename openembedded/packages/nis/ypserv_2.15.bb to openembedded/packages/nis/ypserv_2.17.bb and openembedded/packages/nis/ypbind-mt_1.18.bb to openembedded/packages/nis/ypbind-mt_1.19.bb (the older versions were removed from the NIS archive site after the release of the source archive.)
  4. Type make in the new directory.

The build process will produce an image in tmp/deploy/images called openslug-nslu2-<date>.flashdisk.img. This image may be installed on an NSLU2 using UpSlug. See the instructions in UsingTheBinary.

The build builds a copy of UpSlug for the build platform in tmp/staging/build-system/bin/upslug, where build-system is the operating system on which make is executed.

There is extensive information in the remainder of this web site about how to configure the OpenSlug image. For informaton about using the image see InitialisingOpenSlug.

The remainder of this document describes the source build in more detail.

Build Requirements

To build OpenSlug requires a C compiler. gcc versions 3.3.5 and later are known to work. The build also requires the standard utilties, such as sed. An absolute requirement is the existence of a bash compatible shell in /bin/sh - this is normal on Linux, BSD and similar operating systems.

The build by default uses the Psyco JIT Compiler and the ccache compiler cache program. If these are not available there will be warnings in the log files. These are harmless. See GettingStarted for more information.

Build failures

First try "make" with no arguments. If the simple make fails in some mysterious way try "make openslug-firmware-safe" (this requires that your shell support env -i). The safe option removes environment settings and disables ccache.

The log file outputs error messages. Much of the time these will be sufficient to identify the problem. The single most common problem is that the download of a piece of software fails - repeat the make command, the build will continue with a retry of the failed download.

Much more information is contained in the CustomisingTheBuild page.

Release Notes

The release notes for this version of OpenSlug are contained in OpenSlug-2.0 release notes.

Build notes

I have just attempted the build from the source and encountered two issues.

1. Sleepycat does not have the db-4.3.27.tar.gz for download.

   I searched the net and found a copy. Dumped into download dir.
   Then created a checksum with md5sum.

2. There is an issue with your cvs download of irssi from your cvs.

   Edit the file openembedded/packages/irssi/irssi_cvs.bb 
   Add a line near the top
    CVSDATE = "20050930"
   Force the date and the build continues.
view · edit · print · history · Last edited by Joe S.
Based on work by ByronT, rwhitby, malfi, HannesReich, and jbowler.
Originally by jbowler.
Page last modified on May 16, 2006, at 12:51 AM