Update build requirements on the README

This commit is contained in:
Manolis Surligas 2019-12-12 18:17:50 +02:00
parent 31a6223334
commit 29081b6207
1 changed files with 68 additions and 21 deletions

View File

@ -9,9 +9,10 @@ telecommunication schemes.
## Installation ## Installation
### Requirements ### Requirements
* GNU Radio ( > 3.7.11 ) * GNU Radio ( > 3.8.0 )
* CMake ( > 3.1) * CMake ( > 3.8)
* G++ (with C++11 support) * G++ (> 4.8)
* Boost
* VOLK * VOLK
* libogg * libogg
* libvorbis * libvorbis
@ -20,25 +21,63 @@ telecommunication schemes.
* libjsoncpp * libjsoncpp
* git * git
* swig * swig
* gr-soapy (>= 2.0.0)
**Optional** **Optional**
* gr-osmocom (for using the flowgraphs with real SDR hardware) * [iqzip](https://gitlab.com/librespacefoundation/sdrmakerspace/iqzip) (for compresses IQ storage)
* libfec (it will automatically installed if not present)
#### Debian / Ubuntu #### Debian / Ubuntu
```bash ```bash
sudo apt install -y build-essential cmake gnuradio g++ \ sudo apt install -y
python-mako python-six libogg-dev \ libboost-dev \
libvorbis-dev libpng-dev libpng++-dev \ libboost-date-time-dev \
swig libjsoncpp-dev libboost-filesystem-dev \
cd /tmp libboost-program-options-dev \
git clone https://github.com/gnuradio/volk.git libboost-system-dev \
cd volk libboost-thread-dev \
mkdir build libboost-regex-dev \
cd build libboost-test-dev \
cmake .. swig \
make -j $(nproc --all) cmake \
sudo make install build-essential \
pkg-config \
gnuradio-dev \
libconfig++-dev \
libgmp-dev \
liborc-0.4-0 \
liborc-0.4-dev \
liborc-0.4-dev-bin \
libjsoncpp-dev \
libpng++-dev \
libvorbis-dev \
git
```
#### openSUSE
```bash
sudo zypper in -y \
boost-devel \
libboost_filesystem-devel \
libboost_system-devel \
libboost_thread-devel \
libboost_program_options-devel \
libboost_regex-devel \
libboost_test-devel \
python3 \
python3-devel \
swig \
cmake \
gcc-c++ \
gcc \
soapy-sdr \
soapy-sdr-devel \
gnuradio \
gnuradio-devel \
gmp-devel \
libmpir-devel \
liborc-0_4-0 \
orc \
log4cpp-devel \
git
``` ```
### Installation from source ### Installation from source
@ -54,7 +93,9 @@ sudo make install
``` ```
If this is the first time you are building the gr-satnogs module run If this is the first time you are building the gr-satnogs module run
`sudo ldconfig` ```bash
sudo ldconfig
```
#### Advanced #### Advanced
By default, the **SatNOGS** module will use the default installation prefix. By default, the **SatNOGS** module will use the default installation prefix.
@ -62,14 +103,18 @@ This highly depends on the Linux distribution. You can use the `CMAKE_INSTALL_PR
variable to alter the default installation path. variable to alter the default installation path.
E.g: E.g:
`cmake -DCMAKE_INSTALL_PREFIX=/usr ..` ```bash
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
```
Also, by default the build system enables a set of blocks used for debugging Also, by default the build system enables a set of blocks used for debugging
during the development. The enable/disable switch is controlled through the during the development. The enable/disable switch is controlled through the
`INCLUDE_DEBUG_BLOCKS` boolean variable. If for example, you want to disable the `INCLUDE_DEBUG_BLOCKS` boolean variable. If for example, you want to disable the
debugging blocks, the **CMake** command would be: debugging blocks, the **CMake** command would be:
`cmake -DINCLUDE_DEBUG_BLOCKS=OFF ..` ```bash
cmake -DINCLUDE_DEBUG_BLOCKS=OFF ..
```
Another common control option is the library suffix of the Linux distribution. Another common control option is the library suffix of the Linux distribution.
There are distributions like Fedora, openSUSE, e.t.c that the their 64-bit version There are distributions like Fedora, openSUSE, e.t.c that the their 64-bit version
@ -79,7 +124,9 @@ On the other hand, distributions like Ubuntu do the exact opposite. They use
on the `lib32` directory. In any case the correct library directory suffix on the `lib32` directory. In any case the correct library directory suffix
can be specified with the `LIB_SUFFIX` variable. For example: can be specified with the `LIB_SUFFIX` variable. For example:
`cmake -DLIB_SUFFIX=64 -DCMAKE_INSTALL_PREFIX=/usr -DINCLUDE_DEBUG_BLOCKS=OFF ..` ```bash
cmake -DLIB_SUFFIX=64 -DCMAKE_INSTALL_PREFIX=/usr -DINCLUDE_DEBUG_BLOCKS=OFF ..
```
will install the libraries at the `/usr/lib64` directory. will install the libraries at the `/usr/lib64` directory.