old-www/HOWTO/AX25-HOWTO/x144.html

729 lines
13 KiB
HTML

<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
>.&#13;</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 ---&#62;
[*] Prompt for development and/or incomplete code/drivers
...
General setup ---&#62;
...
[*] Networking support
...
Networking options ---&#62;
&#60;*&#62; UNIX domain sockets
...
[*] TCP/IP networking
...
[?] IP: tunneling
...
Amateur Radio Support ---&#62;
--- 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 ---&#62;
&#60;?&#62; Serial port KISS driver
&#60;?&#62; Serial port 6PACK driver
&#60;?&#62; BPQ Ethernet driver
&#60;?&#62; High-speed (DMA) SCC driver for AX.25
&#60;?&#62; Z8530 SCC driver
&#60;?&#62; BAYCOM ser12 fullduplex driver for AX.25
&#60;?&#62; BAYCOM ser12 halfduplex driver for AX.25
&#60;?&#62; BAYCOM picpar and par96 driver for AX.25
&#60;?&#62; BAYCOM epp driver for AX.25
&#60;?&#62; 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
&#60;?&#62; 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
>&#13;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"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>A note on callsigns, addresses and things before we start</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>