Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
wiki1182: BuildTheOSSource (Version 6)

Build It -- Downloading the Neutrino OS/Kernel Source#

This is the easy way to build the whole OS source (kernel, process manager, libraries, services, utilities ... the whole shebang, about 680M of stuff). After you have done this, you will want to be much more discerning and want to understand how the source tree works and how the build system works.

Pre-requisites#

To build the Neutrino OS source you need to have:
  1. Momentics Development Environment installed for the build tools
  2. Have the OS source available to your local machine.

Supported build environments include: Neutrino (x86 self-hosted), Windows, Linux and Solaris. : NOTE ; At this time you can only build GNU configure components on Neutrino self-hosted.

These instructions assume you have pulled the source down to a single directory that will serve as the build root (BUILD_ROOT):

UnixWindows

% pwd
/home/somepath
% ls
trunk
% export BUILD_ROOT=/home/somepath

c:\> pwd
c:/home/somepath
c:\> dir
...
06/09/2007 01:07 PM <DIR> trunk
c:\> set BUILD_ROOT=c:/home/somepath NOTE: Use forward slashes (/) for the environment variables used in the QNX build process.

For Windows users, mentally replace $BUILD_ROOT with %BUILD_ROOT% when we do the variable descriptions below.

Build It#

  1. If you are not running Neutrino self-hosted, then you will need to tell the build process to ignore the content of the GNU configure style source modules. To do this run this hide-gnu.sh script.
    % ksh hide-gnu.sh $BUILD_ROOT
  2. Create a staging directory for installed binaries and headers to go
    % cd $BUILD_ROOT
    % mkdir stage
  3. Configure the override makefile stub % cd $BUILD_ROOT
    % cat >qconf-override.mk
    USE_ROOT_nto=$BUILD_ROOT/stage
    INSTALL_ROOT_nto=$BUILD_ROOT/stage
    OSLIST=nto
    EXCLUDE_VARIANTLIST=wcc
    VERSION_REL=6.3.0
    ^D
  4. Set the override environment variable to point at the makefile stub
    % export QCONF_OVERRIDE=$BUILD_ROOT/qconf-override.mk
  5. Install all of the header files in the local stage
    % cd $BUILD_ROOT/trunk
    % make hinstall
    ... lots of output, including copying to $BUILD_ROOT/stage
  6. Build the Neutrino OS binaries
    % cd $BUILD_ROOT/trunk
    % make install
    ... lots of build output, binaries copied to $BUILD_ROOT/stage

The final binaries (libraries, executables) that you have built should now be found in the $BUILD_ROOT/stage tree.

For a more detailed explanation of these build steps and what is going on, read on to the understanding the Neutrino build process

Attachments:
Text hide-gnu.sh [BuildTheOSSource/hide-gnu.sh]