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.
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
Linux Kernel HOWTO.
The normal place for the kernel source to be unpacked to is the
/usr/src directory into a subdirectory called linux.
To do this you should be logged in as root and execute a series
of commands similar to the following:
# cd /usr/src
# mv linux linux.old
# tar xzvf linux-2.4.9.tar.gz
# cd linux |
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:
If you are running X you can get a graphical interface using:
You might also try:
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.
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).
The options most relevant to an AX.25 configuration are:
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 |
The options I have flagged with a `*' are those
that you must 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.
After you have completed the kernel configuration you should be able to
cleanly compile your new kernel:
# make dep
# make clean
# make zImage |
Make sure you move your arch/i386/boot/zImage file
wherever you want it and then edit your
/etc/lilo.conf file and rerun
lilo to ensure that you actually boot from it.
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:
# make modules
# make modules_install |
to install your modules in the appropriate location.
You will also need to add some entries into your /etc/modules.conf
file to ensure that the kerneld program knows how to locate the
kernel modules. You should add/modify the following:
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 |
| On Debian-based Linux systems these entries should go into the file
/etc/modutils/aliases and then you need to run
/sbin/update-mpodules. |
After you have successfully compiled and booted your new kernel you
need to compile and install the ax25 library, tools, and application
programs.
To compile and install libax25 you should use a series of commands
similar to the following:
# 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 |
| The arguments to the configure command ensure that
the files will be installed in the "standard" places under the
directory /usr in subdirectories
bin, sbin,
etc and man. If you simply run
configure with no options it will default to putting all files under
/usr/local. This can cause the situation where you
have configuration files in both /usr and
/usr/local. If you want to ensure that this can't
happen you can make /usr/local/etc/ax25 a symbolic
link to /etc/ax25 at the very beginning of the
install process and then you won't have to worry about it. |
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:
command to install some sample configuration files into the /etc/ax25/
directory from which to work.
You can now build install the AX.25 tools in a similar fashion:
# 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) |
And finally you can install the AX.25 applications:
# 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) |
If you get messages something like:
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.) |
then you should double check that you have the
ncurses 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.