Project

General

Profile

Software Getting Started » History » Version 24

tsaitgaist, 02/19/2016 10:49 PM
add automake to required packages

1 1
== OsmocomBB Getting Started Guide ==
2
3
This page will describe how to compile the firmware, the host utilities and how to use them.
4 10
If you haven't do so already, checkout [wiki:PreliminaryRequirements]
5 1
6
=== Compiling osmocomBB ===
7
osmocomBB consists out of software that is intended to be run on the phone (target) and the host system.
8
9 6 steve-m
==== Dependencies for the host ====
10 1
11 18 tsaitgaist
osmocomBB requires GNU autoconf, automake, libtool, pkg-config, make and GCC to compile.
12
You will also need to use git to access and update the sources.
13
The name of these packages depend on the distribution used.
14 1
For Debian the package names are:
15
{{{
16 20 tsaitgaist
#!sh
17 24 tsaitgaist
sudo aptitude install libtool shtool automake autoconf git-core pkg-config make gcc
18 1
}}}
19 18 tsaitgaist
20 22
For osmocomBB, as for several other osmocom projects, you will also need [wiki:libosmocore]. Note: Although libosmocore is included when getting osmocom-bb from the git repository, you have to install it separately. The libosmocore subtree is only used to compile the embedded ARM version of libosmocore.
21 1
22 9
==== Dependencies for the target ====
23 1
24 23 Hoernchen
To compile osmocomBB or SIMtrace for the target we '''need a GNU [wiki:toolchain] for ARM.'''
25 13
26 1
==== Getting and updating the source ====
27
28 2
{{{
29 20 tsaitgaist
#!sh
30
git clone git://git.osmocom.org/osmocom-bb.git
31 19 tsaitgaist
cd osmocom-bb
32
git pull --rebase
33 9
}}}
34
35 1
==== Building the source ====
36
Compiling both the target and the host code will happen with the following command. It assumes that the '''arm-elf-gcc'''
37 23 Hoernchen
is''' inside the current path.''
38 2
39
{{{
40 20 tsaitgaist
#!sh
41
cd src
42
make
43 1
}}}
44
45
If your GCC binary that produces ARM code is not called '''arm-elf-gcc''' you will need to invoke the following statement
46 4
and provide the basename of the toolchain with the ending '''-'''.
47
48 2
{{{
49 20 tsaitgaist
#!sh
50
cd src
51
make -e CROSS_TOOL_PREFIX=arm-OTHER_NAME-
52 1
}}}
53 4
54
If no error has occured you will have the firmware binaries in ''src/target/firmware/board/compal_e88/*.bin'' that can be
55
used with the Motorola C123. You also have the binaries to run on your host in ''src/host/osmocon/osmocon'', in 
56
''src/host/layer23/src/misc'' and ''layer23/src/mobile''.
57 5
58
59
=== Running osmocomBB ===
60
The original bootloader of Compal and others are built in a way to load code via the serial interface. The [wiki:osmocon]
61
utility implements this protocol and can upload the firmware. Please the [wiki:osmocon] for the details of how to use
62
it properly.
63
64
After the firmware has been loaded the [wiki:osmocon] application will print the output of the serial console
65
and it provides a unix domain socket that another layer of software can connect to. In the case of osmocomBB
66 16
this higher layer software is called [wiki:ccch_scan] and is actually a group of binaries providing different functionality. Please
67
see [wiki:ccch_scan] for the details.
Add picture from clipboard (Maximum size: 48.8 MB)