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