<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>OpenBeOS Network Kit</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css"> 
body 
{ 
        text-indent: 0in; 
        font-stretch: normal; 
        text-align: left; 
        font-weight: normal; 
        text-decoration: none; 
        font-variant: normal; 
        color: #000000; 
        font-size: 12pt; 
        font-style: normal; 
        widows: 2; 
        font-family: "Century Gothic", "Trebuchet MS", "Trebuchet", "Arial", "Helvetica"; 
        background-color: #ffffff; 
} 
</style> 
</head>

<body text=#000000 vLink=#0000a0 aLink=#0000ff link=#0000c0 bgColor=#ffffff> 
<h1>OpenBeOS Network Kit: Build &amp; installation instructions</h1>
<p>Although the stack isn't quite finished, you can already test some basics. <br>
  You'll have to get the code, build it, install it and run it. <br>
  There isn't yet an easier way of getting the network stack, we're far from ready to release 
  a binary package. </p>
<p>So, if you accept your mission :</p>

<ol>
<li><b>Get familiar</b>
  <p>First, go to <a href="http://open-beos.sourceforge.net/tms/team.php?id=7">team 
  web page</a>.<br>
  Have a look around and see the current status of the stack. Have a glance 
    over the jobs, perhaps there's something that interests you?
  </p>
</li>

<li><b>Furbish your tools</b>
  <p>Get the <a href="http://open-beos.sourceforge.net/dev.php">build tools 
  suite</a>.<br>
  You'll need CVS, JAM, the fixed LD linker
  </p>
</li>

<li><b>May the code be with you</b>
  <p>For dark reason, you should have the source code to build.<br>
  So, you must checkout (anonymously) the full OBOS CVS:
  <ul>
  <li>Using CVS tool: follow the SourceForge <a href="http://sourceforge.net/cvs/?group_id=33869">information 
    on CVS</a>.
  <li>If you don't want to fight with 'cvs' command line syntax, I recommand 
    you using <a href="http://www.bebits.com/app/3407">CheckItOut</a> tool, with these settings values:
      <p>
      <table border=0 cellspacing=4> 
      <tr><td align="right"><i>Project Name:</i></td><td><tt>open-beos</tt></td></tr>
      <tr><td align="right"><i>Location:</i></td><td><tt>/path/to/where/you/want/to/store/OBOS/cvs/tree/locally</tt></td></tr>
      <tr><td aligb="right"><i>Module Name:</i></td><td><tt>current</tt></td></tr>
      </table>
      </p>
      
      <p>Only check <em>&quot;Open Tracker once Completed&quot;</em> option, if you 
      want. <br>
      There, click &quot;<em>Go</em>&quot;. Patience, it take time (and bandwidth!)</p>
      
  <li>Other solution: download and unzip the current CVS <a href="http://cvs.sourceforge.net/cvstarballs/open-beos-cvsroot.tar.gz%20">snapshot 
    tarball</a> from SourceForge. <br>
    Beware, it's huge, expect around 13MB.
  </ul>
  </p>  
</li>

<li><b>Build</b>
<p>Building the whole Networking Kit stuffs was made easy by Jam rules.<BR> 
Simply run these commands from a Terminal:</p>
  <p>
  <TABLE cellpadding=6 bgcolor=#E5E5E5 border=0> 
  <TR> 
  <TD><TT>$ cd /path/to/your/local/openbeos/current<BR>
  $ ./configure<BR>
  $ jam NetworkingKit</TT> 
  </TD> 
  </TR> 
  </TABLE> 
  </p>
  <p>It should build all networking kit stuffs. If you encount any compile or 
    link errors, report it to the network team mailing list.</p>
</li>

<li><b>Install</b>
  <p>There are basically two ways to install the networking kit. The first way is to do it manually, as is described below. The second way 
   is easier, as you won't have to do anything manually. If you want to use the second way, use the command <tt>jam install-networking</tt>.
   This way you can skip all the manual steps described below. Please note that the OpenBeOS provided utilities like ping, are located
   under your local <tt>current/tests/kits/net/</tt>, where you can execute them as often as you like.</p>
  <p>However, if you are the manual type of person, you can find the networking kit binaries now under your local <tt>current/distro/x86.R1/*</tt><br>
  To install:
  <ul>
  <li>open your <tt>current/distro/x86.R1/beos/system/add-ons/kernel/drivers/bin</tt> folder<br>
  </li>
  <li>copy the <tt>net_stack_driver</tt> and <tt>net_server_driver</tt> into 
    your <tt>/boot/home/config/add-ons/kernel/drivers/bin</tt><br>
  </li>
  <li>create in your <tt>/boot/home/config/add-ons/kernel/drivers/dev/net</tt> 
    two symlinks <tt>&quot;net_stack_driver&quot;</tt> and <tt>&quot;net_server_driver&quot;</tt>, 
    targetting the ones in <tt>../../bin/net_{stack|server}_driver</tt> (create this 'dev/net' 
    directory if it don't exists yet)
  </li>
  <li>copy the whole <tt>current/distro/x86.R1/beos/system/add-ons/kernel/</tt>
    network folder to your <tt>/boot/home/config/add-ons/kernel</tt><br>
    <font color="red">BEWARE</font>: BONE users, you should disabled BONE own <tt>/boot/beos/system/add-ons/kernel/network</tt>
    modules folder, as our stack try to load these modules too, which currently throw you into KDL heaven...<br>
    So, rename this folder into anything that make sense, like <tt>network.bone</tt>. It'll disabled BONE after a reboot, which is required
    anyway to test the OBOS stack...
  </li>
  <li>copy the <tt>libnet.so</tt> and <tt>libnetapi.so</tt> libraries from your <tt>current/distro/x86.R1/beos/system/lib</tt>
    to a <tt>lib</tt> folder you should create into your <tt>current/distro/x86.R1/beos/bin</tt>, where the command line
    OBOS networking kit apps are located.<br>
  </li>
  </ul>
  </p>
</li>

<li><b>Test, test, test</b>
  <p>You should free one of your /dev/net/*/0 network card (by disable in BONEyard, 
    or by disabling in Network for net_server) Then, run the OBOS ifconfig tool from 
    Terminal to see (and start) the stack detected interface(s) Last, play with 
    ping, arp, traceroute, etc. Also check out the details on the <a href="http://philippe.houdoin.free.fr/phil/beos/openbeos/network_kit/">stack 
    design.</a></p>
</li>

</ol>

<hr>
<h6>This document is written by <a href="mailto:philippe_[DOT]_houdoin_[AT]_free_[DOT]_fr">Philippe 
  Houdoin</a> and edited by <a href="mailto:n_[DOT]_reedijk_[AT]_planet_[DOT]_nl">Niels Reedijk</a>. 
  Last updated on June 22th, 2003</h6>

</body>
</html>