<HTML ><HEAD ><TITLE >Installing the AX.25/NET/ROM/ROSE software</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.63 "><LINK REL="HOME" TITLE="Linux Amateur Radio AX.25 HOWTO" HREF="index.html"><LINK REL="PREVIOUS" TITLE="The AX.25/NET/ROM/ROSE software components" HREF="x94.html"><LINK REL="NEXT" TITLE="A note on callsigns, addresses and things before we start" HREF="x235.html"></HEAD ><BODY CLASS="SECT1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Linux Amateur Radio AX.25 HOWTO</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="x94.html" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="x235.html" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="SECT1" ><H1 CLASS="SECT1" ><A NAME="AEN144" >4. Installing the AX.25/NET/ROM/ROSE software</A ></H1 ><P >To successfully install AX.25 support on your Linux system you must configure and install an appropriate kernel and then install the AX.25 utilities.</P ><DIV CLASS="TIP" ><P ></P ><TABLE CLASS="TIP" WIDTH="100%" BORDER="0" ><TR ><TD WIDTH="25" ALIGN="CENTER" VALIGN="TOP" ><IMG SRC="../images/tip.gif" HSPACE="5" ALT="Tip"></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><P >Rather than building and installing from source, you may prefer to install prebuilt binary packages for your system. Debian and RPM format packages are available on various archive sites including <A HREF="http://www.debian.org" TARGET="_top" >http://www.debian.org</A > and <A HREF="http://rpmfind.net" TARGET="_top" >http://rpmfind.net</A >; look for "ax25". Incidently, the Debian Linux distribution is considered by many people to be one of the more "Amateur Radio friendly" distributions, and provides many amateur radio applications as Debian packages (one of the founders of the project is a ham).</P ></TD ></TR ></TABLE ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN151" >4.1. Compiling the kernel</A ></H2 ><P >If you are already familiar with the process of compiling the Linux kernel then you can skip this section, just be sure to select the appropriate options when compiling the kernel. If you are not, then read on. You may also want to read the <A HREF="http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html" TARGET="_top" >Linux Kernel HOWTO</A >. </P ><P >The normal place for the kernel source to be unpacked to is the <TT CLASS="LITERAL" >/usr/src</TT > directory into a subdirectory called <TT CLASS="LITERAL" >linux</TT >. To do this you should be logged in as <TT CLASS="LITERAL" >root</TT > and execute a series of commands similar to the following:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># cd /usr/src # mv linux linux.old # tar xzvf linux-2.4.9.tar.gz # cd linux</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >After you have unpacked the kernel source, you need to run the configuration script and choose the options that suit your hardware configuration and the options that you wish built into your kernel. You do this by using the command:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># make menuconfig</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >If you are running X you can get a graphical interface using:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># make xconfig</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >You might also try:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># make config</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >I'm going to describe the full screen method (menuconfig) because it is easier to move around, but use whichever you are most comfortable with.</P ><P >In either case you will be offered a range of options at which you must answer `Y' or `N'. (Note you may also answer `M' if you are using modules. For the sake of simplicity I will assume you are not, please make appropriate modifications if you are).</P ><P >The options most relevant to an AX.25 configuration are:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" >Code maturity level options ---> [*] Prompt for development and/or incomplete code/drivers ... General setup ---> ... [*] Networking support ... Networking options ---> <*> UNIX domain sockets ... [*] TCP/IP networking ... [?] IP: tunneling ... Amateur Radio Support ---> --- Packet Radio protocols [*] Amateur Radio AX.25 Level 2 protocol [?] AX.25 DAMA Slave support [?] Amateur Radio NET/ROM protocol [?] Amateur Radio X.25 PLP (Rose) AX.25 network device drivers ---> <?> Serial port KISS driver <?> Serial port 6PACK driver <?> BPQ Ethernet driver <?> High-speed (DMA) SCC driver for AX.25 <?> Z8530 SCC driver <?> BAYCOM ser12 fullduplex driver for AX.25 <?> BAYCOM ser12 halfduplex driver for AX.25 <?> BAYCOM picpar and par96 driver for AX.25 <?> BAYCOM epp driver for AX.25 <?> Soundcard modem driver [?] soundmodem support for Soundblaster and compatible cards [?] soundmodem support for WSS and Crystal cards [?] soundmodem support for 1200 baud AFSK modulation [?] soundmodem support for 2400 baud AFSK modulation (7.3728MHz crystal) [?] soundmodem support for 2400 baud AFSK modulation (8MHz crystal) [?] soundmodem support for 2666 baud AFSK modulation [?] soundmodem support for 4800 baud HAPN-1 modulation [?] soundmodem support for 4800 baud PSK modulation [?] soundmodem support for 9600 baud FSK G3RUH modulation <?> YAM driver for AX.25</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >The options I have flagged with a `<TT CLASS="LITERAL" >*</TT >' are those that you <EM >must</EM > must answer `Y' to. The rest are dependent on what hardware you have and what other options you want to include. Some of these options are described in more detail later on, so if you don't know what you want yet, then read ahead and come back to this step later.</P ><P >After you have completed the kernel configuration you should be able to cleanly compile your new kernel:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># make dep # make clean # make zImage</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >Make sure you move your <TT CLASS="LITERAL" >arch/i386/boot/zImage</TT > file wherever you want it and then edit your <TT CLASS="LITERAL" >/etc/lilo.conf</TT > file and rerun <EM >lilo</EM > to ensure that you actually boot from it.</P ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="AEN185" >4.1.1. A word about kernel modules</A ></H3 ><P > Compiling drivers as modules is useful if you only use AX.25 occasionally and want to be able to load and unload them on demand to save system resources. However, some people have problems getting the modularized drivers working because they are more complicated to configure. If you've chosen to compile any drivers as modules, then you'll also need to run the commands:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># make modules # make modules_install</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >to install your modules in the appropriate location.</P ><P >You will also need to add some entries into your <TT CLASS="LITERAL" >/etc/modules.conf</TT > file to ensure that the <EM >kerneld</EM > program knows how to locate the kernel modules. You should add/modify the following:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" >alias net-pf-3 ax25 alias net-pf-6 netrom alias net-pf-11 rose alias tty-ldisc-1 slip alias tty-ldisc-3 ppp alias tty-ldisc-5 mkiss alias bc0 baycom alias nr0 netrom alias pi0a pi2 alias pt0a pt alias scc0 optoscc (or one of the other scc drivers) alias sm0 soundmodem alias tunl0 newtunnel alias char-major-4 serial alias char-major-5 serial alias char-major-6 lp</PRE ></FONT ></TD ></TR ></TABLE ></P ><DIV CLASS="TIP" ><P ></P ><TABLE CLASS="TIP" WIDTH="100%" BORDER="0" ><TR ><TD WIDTH="25" ALIGN="CENTER" VALIGN="TOP" ><IMG SRC="../images/tip.gif" HSPACE="5" ALT="Tip"></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><P >On Debian-based Linux systems these entries should go into the file <TT CLASS="LITERAL" >/etc/modutils/aliases</TT > and then you need to run <TT CLASS="LITERAL" >/sbin/update-mpodules</TT >.</P ></TD ></TR ></TABLE ></DIV ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN200" >4.2. The AX.25 library, tools, and application programs</A ></H2 ><P >After you have successfully compiled and booted your new kernel you need to compile and install the ax25 library, tools, and application programs.</P ><P >To compile and install libax25 you should use a series of commands similar to the following:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># cd /usr/src # tar xzvf libax25-0.0.7.tar.gz # cd libax25-0.0.7 # ./configure --exec_prefix=/usr --sysconfdir=/etc --localstatedir=/var # make # make install</PRE ></FONT ></TD ></TR ></TABLE ></P ><DIV CLASS="TIP" ><P ></P ><TABLE CLASS="TIP" WIDTH="100%" BORDER="0" ><TR ><TD WIDTH="25" ALIGN="CENTER" VALIGN="TOP" ><IMG SRC="../images/tip.gif" HSPACE="5" ALT="Tip"></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><P >The arguments to the <TT CLASS="LITERAL" >configure</TT > command ensure that the files will be installed in the "standard" places under the directory <TT CLASS="LITERAL" >/usr</TT > in subdirectories <TT CLASS="LITERAL" >bin</TT >, <TT CLASS="LITERAL" >sbin</TT >, <TT CLASS="LITERAL" >etc</TT > and <TT CLASS="LITERAL" >man</TT >. If you simply run configure with no options it will default to putting all files under <TT CLASS="LITERAL" >/usr/local</TT >. This can cause the situation where you have configuration files in both <TT CLASS="LITERAL" >/usr</TT > and <TT CLASS="LITERAL" >/usr/local</TT >. If you want to ensure that this can't happen you can make <TT CLASS="LITERAL" >/usr/local/etc/ax25</TT > a symbolic link to <TT CLASS="LITERAL" >/etc/ax25</TT > at the very beginning of the install process and then you won't have to worry about it.</P ></TD ></TR ></TABLE ></DIV ><P >If this is a first time installation, that is you've never installed any ax25 code on your machine before, you should also use the:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># make installconf</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >command to install some sample configuration files into the <TT CLASS="LITERAL" >/etc/ax25/</TT > directory from which to work.</P ><P >You can now build install the AX.25 tools in a similar fashion:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># cd /usr/src # tar xzvf ax25-tools-0.0.6.tar.gz # cd ax25-tools-0.0.6 # ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var # make # make install # make installconf (if you want to install the configuration files)</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >And finally you can install the AX.25 applications:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" ># cd /usr/src # tar xzvf ax25-apps-0.0.4.tar.gz # cd ax25-apps-0.0.4 # ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var # make # make install # make installconf (if you want to install the configuration files)</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >If you get messages something like:</P ><P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" >gcc -Wall -Wstrict-prototypes -O2 -I../lib -c call.c call.c: In function `statline': call.c:268: warning: implicit declaration of function `attron' call.c:268: `A_REVERSE' undeclared (first use this function) call.c:268: (Each undeclared identifier is reported only once call.c:268: for each function it appears in.)</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >then you should double check that you have the <EM >ncurses</EM > package properly installed on your system. The configuration script attempts to locate your package in the common locations, but some installations have it badly installed and it is unable to locate them.</P ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="x94.html" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="x235.html" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >The AX.25/NET/ROM/ROSE software components</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" > </TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >A note on callsigns, addresses and things before we start</TD ></TR ></TABLE ></DIV ></BODY ></HTML >