Project

General

Profile

BuildInstructionsPage » History » Version 25

matt, 04/22/2017 04:04 PM

1 1
= Getting and Building OP25 =
2
This page describes how you can get the latest version of OP25 and build it for your computer.
3
4
== Installing the Pre-requisites ==
5
Before doing anything you'll need to make sure you have all the pre-requisite software installed. At the very minimum this will include:
6
 * Subversion -- Revision control software to access the source code repository
7
 * g++ -- The GNU C++ compiler,
8
 * make -- GNU Make,
9 9
 * GNURadio (Release 3.2) -- The free software digital signal processing toolkit and
10 1
 * autoconf+automake -- So you can create the configure script and makefiles.
11 5
 * [http://itpp.sourceforge.net IT++] A library of communications-related code.
12 1
13 7
The details on what you need to obtain and how you do so vary between GNU/Linux distributions. Its easiest on Debian (and derived distributions such as Ubuntu) and can be quite painful on some distributions. Your mileage probably varies so feel free to document the process thoroughly. We get the pre-requisites installed with one command on Ubuntu as follows:
14
15
{{{
16 14 matt
sudo apt-get -y install swig g++ automake libtool python-dev libfftw3-dev \
17 18 matt
libcppunit-dev libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries \
18 14 matt
libsdl1.2-dev python-wxgtk2.8 subversion git-core guile-1.8-dev \
19 7
libqt4-dev python-numpy ccache python-opengl libgsl0-dev \
20 8
python-cheetah python-lxml doxygen qt4-dev-tools \
21 16 matt
libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools libitpp-dev
22 7
}}}
23 1
24
== Downloading the Source Code ==
25
Now you should be ready to get the source code. The best way to do this is using Subversion:
26
27
{{{
28 23
svn co http://op25.osmocom.org/svn/trunk op25
29 1
}}}
30
31 19
This should create a directory named 'op25' containing the latest version of the source files.
32 1
33
== Compiling ==
34
Compiling and installing OP25 requires you run the following commands:
35
36
{{{
37 21
cd op25/blocks
38 1
./bootstrap && ./configure && make
39
make check
40
sudo make install
41
}}}
42
43 23
Of course, you won't get away with it that easily! There are probably going to be compile errors and such that require you to install missing packages. Please make a careful note of the packages you need to install and problems you encounter. Then you can update this Wiki page to help others following after. For people without a login for the Wiki you can [mailto:op25-help@sedition.org.au email me] with your notes. Developers can request a Wiki/Subversion login (with your preferred username/password).
44 12 max
45
== Compiling the imbe_vocoder block ==
46
47
For the most part, you can follow the directions in the INSTALL file.  Don't forget to run the bootstrap script prior to running configure.  You may also be able to get some extra speed by enabling some additional gcc optimizations.  Here's one possible build sequence:
48
{{{
49
cd op25/imbe_vocoder
50
sh bootstrap
51
./configure CXXFLAGS="-O3"
52
make
53 13 max
sudo make install
54 12 max
}}}
55
56
Note: the 'decoder' block (see above) must have previously been installed prior to building this block.
57 17
58 20 max
== Compiling the repeater block ==
59
60
First, compile the imbe_vocoder block (see above).  Then do
61
{{{
62
cd op25/repeater
63
sh bootstrap
64
./configure
65
make
66
sudo make install
67
}}}
68
69 17
70
== Build instructions for the Linux novice ==
71
72 25 matt
[BeginnersBuildDeprecated These directions for beginners] might be of help to those without a background in Linux to get the project up and running, or even those with experience who are running into a wall getting a piece to build.  
Add picture from clipboard (Maximum size: 48.8 MB)