ChorusOS 5.0 Installation Guide

Building the System Image


Note -

The following procedure assumes that the development environment has already been correctly installed on the host workstation. See Chapter 1, Installing on the Host, for instructions.


To Build the System Image
  1. Create and change to a build directory where you will build the system image:


    $ mkdir build_dir
    $ cd build_dir
    

    Note -

    The file system containing the build_dir directory must be accessble by NFS from the remote ChorusOS target.


  2. Set an environment variable to use with the configure(1CC) command as a shortcut to the base directory.

    For example:


    $ export DIR=/opt/SUNWconn/SEW/5.0-x86/chorus-x86
    
  3. The PATH must be set correctly to include the directory:

    install_dir/chorus-x86/tools/host/bin,

    where the default install_dir is /opt/SUNWconn/SEW/5.0-x86.

    The PATH environment variable must include /usr/openwin/bin, which contains the imake utility.

  4. Configure the build directory, using the configure(1CC) command:

    • If you are building from a binary distribution:


      $ configure -b $DIR/kernel \ 
      $DIR/os \ 
      $DIR/tools \ 
      -s $DIR/src/nucleus/bsp \ 
      $DIR/src/nucleus/bsp/x86/pc
      

      Note -

      The preceding command configures the build directory to include components installed during a "Default Install". This command does not include optional components, such as the X library or code examples, that you may choose to install separately on Solaris host workstations. For example, to include everything in your build environment:


      $ configure -b $DIR/kernel \ 
      $DIR/os \ 
      $DIR/tools \ 
      $DIR/opt/X11 \ 
      -s $DIR/src/nucleus/bsp \ 
      $DIR/src/nucleus/bsp/x86/pc \ 
      $DIR/src/opt/examples
      

    • If you are building the system image from a source distribution, see the ChorusOS 5.0 Source Delivery Guide.

    As a result of configuration, build_dir now contains the Makefile, which is used to generate the build environment, and the Paths file, which specifies paths to files required by and created in the build environment.

  5. Generate the build environment:


    $ make
    
  6. (Optional) Configure the system image:


    Note -

    If you have only PCI Ethernet adapters, skip this step.


    ISA Ethernet adapters require that you provide configuration information by setting an ETHER_id environment variable in the system image configuration with a command of the form:


    $ configurator -setenv ETHER_id=name,irq,io_base,mem_base
    

    where:

    id

    A decimal value ranging from 0 to 9.

    Up to ten ISA Ethernet adapters can be declared using ETHER_0, ETHER_1, ...ETHER_9

    name

    The type of the device: EL3, NE2000, or SMC

    irq

    A decimal value representing the interrupt request level on the ISA bus

    io_base

    A hexadecimal value representing the base for I/O ports, such as 0x300

    mem_base

    A hexadecimal value representing the base for shared memory, such as 0xD0000


    Note -

    The memory base parameter is required for SMC Ethernet adapters only.


    For example, the following command configures the build environment for one SMC Ethernet adapter with IRQ 9, I/O base at 0x240, and memory base at 0xD0000:


    $ configurator -setenv ETHER_0=SMC,9,0x240,0xD0000
    

    The following command configures the build environment for a system with both an NE2000 adapter and an EL3 adapter:


    $ configurator -setenv ETHER_0=NE2000,5,0x300
    $ configurator -setenv ETHER_1=EL3,7,0x300
    
  7. Build the system image:


    $ make chorus
    

    The resulting system image file is located in the build directory, build_dir, and is called chorus.bmon.


    Note -

    You can also make a smaller system image that includes only the operating system microkernel:


    $ make kernonly
    

  8. Generate the NFS root file system:


    $ make root
    

    This command creates a root directory in the build directory that contains binary and configuration files to be accessed by the target system.

To Place the System Image on the Boot Server

See Chapter 5, Setting Up a Boot Server, for instructions on how to configure the boot server.

  1. Copy the system image to the boot server.

    For example, on a Solaris host workstation:


    $ rcp chorus.bmon boot_server:/tftpboot
    
  2. Verify that everyone has at least read access to the system image on the boot server.

    For example:


    $ rlogin boot_server
    Password: password_for_user
    $ ls -l /tftpboot/chorus.bmon
    -rwxr-xr-x   1 user    group     1613824 Dec 15 17:33 chorus.bmon*
  3. While logged in to the boot server, create a configuration file for the target.

    For a target system with IP address 129.157.197.88 using a boot server with IP address 129.157.197.144, the configuration file contains the following:

    AUTOBOOT=YES
    BOOTFILE=chorus.bmon
    BOOTSERVER=129.157.197.144

    The configuration file is named /tftpboot/819DC558.ChorusOS.5.0, which is constructed from the target system IP address 129.157.197.88 as a concatenation of the following:

    • 129 in decimal translates to 81 in hexadecimal

    • 157 in decimal translates to 9D in hexadecimal

    • 197 in decimal translates to C5 in hexadecimal

    • 88 in decimal translates to 58 in hexadecimal


    Note -

    The system first attempts to find the configuration file with the .ChorusOS.5.0 extension. If no such file exists, the system attempts to find a configuration file with the .ChorusOS.4.0 extension.