Project

General

Profile

Building OpenBSC » History » Version 13

austin, 02/19/2016 10:47 PM

1 1 tec
2 1 tec
== Debian HowTo ==
3 1 tec
4 1 tec
This page will describe the entire installation process of OpenBSC under Debian Linux.
5 1 tec
This tutorial is based on Debian Netinstall 5.0 but will work with other Debian versions.
6 1 tec
7 11 laforge
---
8 1 tec
9 4 tec
To be able to access your OpenBSC machine easily from a remote Terminal, install ssh.
10 1 tec
This can be easily done with "apt-get install ssh".
11 1 tec
12 11 laforge
=== mISDN in case of BS-11 ===
13 1 tec
14 11 laforge
If you want to use a E1-based BTS (like the BS-11), you will need to install mISDN.
15 1 tec
16 11 laforge
'''If you have an IP/Ethernet based BTS (like the ip.access nanoBTS), you don't need this section!'''
17 1 tec
18 11 laforge
Because OpenBSC's E1 support relies on mISDN (named ISDN4Linux before) and hfcmulti as an interface to the BS11, it has to be integrated as a module into the kernel.
19 6 tec
20 11 laforge
First of all you will need to download the 2.6.31 Linux kernel from [http://www.kernel.org/pub/linux/kernel/v2.6/].
21 1 tec
22 11 laforge
Change to '''/usr/src/''' on your OpenBSC machine.
23 12 laforge
Then simply do a {{{wget [http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.31.tar.bz2]}{}}
24 1 tec
25 12 laforge
Unpack the archive:  {{{tar --bzip2 -xvf linux-2.6.31.tar.bz2}}}
26 12 laforge
and create a symlink to fit the Linux standard conventions: {{{ln -s linux-2.6.30 linux}}}.[[BR]]
27 1 tec
28 12 laforge
Now change to linux-2.6.30 typing {{{cd linux-2.6.30}}}.
29 1 tec
30 1 tec
You are ready now to prepare for the main part:
31 1 tec
32 1 tec
Install some tools needed to build the kernel.
33 1 tec
34 12 laforge
{{{apt-get install libncurses5-dev kernel-package}}}
35 1 tec
36 12 laforge
Now configure the kernel modules with {{{make menuconfig}}}
37 1 tec
38 3 tec
Include the ''mISDN'' modules and ''hfcmulti /hfc e1 drivers''.
39 3 tec
40 3 tec
Save the new configuration to '''.config''' .
41 3 tec
42 12 laforge
You can now try to build the Debian kernel package: {{{make-kpkg linux-image --initrd --revision=openbsc01.0}}} .
43 3 tec
44 3 tec
Go a directory higher (cd ..)
45 3 tec
46 1 tec
and install the new kernel package typing:
47 3 tec
48 12 laforge
{{{dpkg -i  kernelpackagename.deb}}}
49 3 tec
50 3 tec
Now you only have to add the dslot=1 parameter for hfcmulti to load with this parameter.
51 1 tec
Otherwise OpenBSC will talk on signalling timeslot 15 where BS11 uses 1.
52 1 tec
53 1 tec
Simply add the following in '''/boot/grub/menu.lst''' :
54 1 tec
55 1 tec
Add this line to the "Kernel"-line
56 1 tec
57 1 tec
'''hfcmulti.dslot=1'''
58 1 tec
59 1 tec
Save changes and reboot your machine with your new kernel.
60 1 tec
61 11 laforge
=== Compiling + running OpenBSC ===
62 3 tec
63 11 laforge
You should install the following debian packages before you start:
64 3 tec
 * libdbi0
65 3 tec
 * libdbi0-dev
66 3 tec
 * libdbd-sqlite3
67 3 tec
 * autoconf
68 11 laforge
 * git-core
69 3 tec
(The list may be incomplete)
70 11 laforge
71 13 austin
You can install those packages with {{{apt-get install libdbi0-dev libdbd-sqlite3 autoconf git-core}}}
72 11 laforge
73 11 laforge
Here are the actual instructions
74 11 laforge
 * Check out OpenBSC from git using {{{git clone git://bs11-abis.gnumonks.org/openbsc.git}}}
75 11 laforge
 * Change into the right directory using {{{cd openbsc/openbsc}}}
76 11 laforge
 * Rebuild the configure script using {{{autoreconf -i}}}
77 11 laforge
 * Run the configure script using {{{./configure}}}
78 11 laforge
 * Build the actual software using {{{make}}}
79 11 laforge
80 11 laforge
Congratulations, you should now have the OpenBSC programs like ''bsc_hack'', ''ipaccess-config'' and others in the 'src/' subdirectory.
Add picture from clipboard (Maximum size: 48.8 MB)