1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
# Installation
You have 3 ways to install odr-dabmux on your host:
## Installing binary packages on some linux distributions
[](https://repology.org/project/odr-dabmux/versions)
## Using installation scripts
If your linux distribution is debian-based, you can install odr-dabmux
as well as the other main components of the mmbTools set with the
[Opendigitalradio dab-scripts](https://github.com/opendigitalradio/dab-scripts.git)
## Compiling manually
Unlike the 2 previous options, this one allows you to compile odr-dabmux with the features you really need.
### Dependencies
#### Debian Bullseye-based OS
```sh
# Required packages
## C++11 compiler
sudo apt-get install --yes build-essential automake libtool
## ZeroMQ
sudo apt-get install --yes libzmq3-dev libzmq5
## Boost 1.48 or later
sudo apt-get install --yes libboost-system-dev
# optional packages
## cURL to download the TAI-UTC bulletin, needed for timestamps in EDI output
sudo apt-get install --yes libcurl4-openssl-dev
```
#### Other linux distributions
For CentOS, in addition to the packages needed to install a compiler, install the packages:
boost-devel libcurl-devel zeromq-devel
Third-party RPM packages are maintained by RaBe, and are built by the
[openSUSE Build Service](https://build.opensuse.org/project/show/home:radiorabe:dab).
For questions regarding these packages, please get in touch with the maintainer of
the [radio RaBe repository](https://github.com/radiorabe/).
For openSUSE, mnhauke is maintaining packages, also built using
[OBS](https://build.opensuse.org/project/show/home:mnhauke:ODR-mmbTools).
### Compilation
The *master* branch in the repository always points to the
latest release. If you are looking for a new feature or bug-fix
that did not yet make its way into a release, you can clone the
*next* branch from the repository.
1. Clone this repository:
```sh
# stable version:
git clone https://github.com/Opendigitalradio/ODR-DabMux.git
# or development version (at your own risk):
git clone https://github.com/Opendigitalradio/ODR-DabMux.git -b next
```
1. Configure the project
```sh
cd ODR-DabMux
./bootstrap
./configure
```
1. Compile and install:
```sh
make
sudo make install
```
Notes:
- It is advised to run the bootstrap and configure steps again every time you pull updates from the repository.
- The configure script can be launched with a variety of options. Run `./configure --help` to display a complete list
## Develop on OSX and FreeBSD
If you want to develop on OSX platform install the necessary build tools and dependencies with brew
```sh
brew install boost zeromq automake curl
```
On FreeBSD, pkg installs all dependencies to /usr/local, but the build
tools will not search there by default. Set the following environment variables
before calling ./configure
```sh
LDFLAGS="-L/usr/local/lib"
CFLAGS="-I/usr/local/include"
CXXFLAGS="-I/usr/local/include"
```
On both systems, RAW output is not available. Note that these systems are not tested regularly.
|