Adding info about Debian/Ubuntu required packages

This commit is contained in:
Carles Fernandez 2014-12-11 22:44:53 +01:00
parent bd784cc9ff
commit 2045647ee5
2 changed files with 45 additions and 15 deletions

View File

@ -16,9 +16,29 @@ This section describes how to set up the compilation environment in GNU/Linux or
GNU/Linux
----------
Tested distributions: Ubuntu 14.04 and 14.10 (32 and 64 bits), Debian 7.7, Fedora 19 and 20, and openSUSE 13.1 (older versions should work as well, but you will need GCC 4.7 or newer).
* Tested distributions: Ubuntu 14.04 LTS and 14.10, Debian 8 Jessie
* Known to work but not continually tested: Fedora 19 and 20, and openSUSE 13.1
* Supported microprocessor architectures:
* i386: Intel x86 instruction set (32-bit microprocessors).
* amd64: also known as x86-64, the 64-bit version of the x86 instruction set, originally created by AMD and implemented by AMD, Intel, VIA and others.
* armhf: ARM hard float, ARMv7 + VFP3-D16 floating-point hardware extension + Thumb-2 instruction set and above (for Debian only).
* arm64: ARM 64 bits or ARMv8 (for Debian only).
### Install GNU Radio:
Older distribution releases might work as well, but you will need GCC 4.7 or newer.
Before building GNSS-SDR, you need to install all the required dependencies. If you are using Debian or Ubuntu, this can be done by copying and pasting the following line in a terminal:
~~~~~~
$ sudo apt-get install build-essential cmake git-core libboost-dev libboost-date-time-dev \
libboost-system-dev libboost-filesystem-dev libboost-thread-dev \
libboost-serialization-dev libboost-program-options-dev libboost-test-dev \
liblog4cpp5-dev libuhd-dev gnuradio-dev libopenblas-dev liblapack-dev gfortran \
libarmadillo-dev libgflags-dev libgoogle-glog-dev libssl-dev libgtest-dev
~~~~~~
Once you have installed these packages, you can jump directly to [how to download the source code and build GNSS-SDR](#download-and-build-linux). Alternatively, if you need to manually install those libraries, please keep reading.
### Manual installation of GNU Radio
Downloading, building and installing [GNU Radio](http://gnuradio.org/redmine/projects/gnuradio/wiki "GNU Radio's Homepage") and all its dependencies is not a simple task. We recommend to use [PyBOMBS](http://gnuradio.org/redmine/projects/pybombs/wiki) (Python Build Overlay Managed Bundle System), the GNU Radio install management system that automatically does all the work for you. In a terminal, type:
@ -57,13 +77,12 @@ Then, you are ready to download and install [UHD](http://files.ettus.com/uhd_doc
$ sudo ./pybombs install uhd gnuradio
~~~~~~
This can take some time (up to two hours to complete, depending on your system), and installs the latest versions of the Universal Hardware Driver (UHD) and GNU Radio in your system, including all their dependencies.
In case you do not want to use PyBOMBS and prefer to build and install GNU Radio manually from source, follow instructions at the [GNU Radio Build Guide](http://gnuradio.org/redmine/projects/gnuradio/wiki/BuildGuide).
This can take some time (up to two hours to complete, depending on your system), and downloads, builds and installs the latest versions of the Universal Hardware Driver (UHD) and GNU Radio in your system, including all their dependencies.
In case you do not want to use PyBOMBS and prefer to build and install GNU Radio step by step, follow instructions at the [GNU Radio Build Guide](http://gnuradio.org/redmine/projects/gnuradio/wiki/BuildGuide).
### Install other libraries used by GNSS-SDR:
### Manual installation of other required dependencies
#### Install the [Armadillo](http://arma.sourceforge.net/ "Armadillo's Homepage") C++ linear algebra library:
@ -141,7 +160,7 @@ $ sudo yum install openssl-devel # For Fedora/CentOS/RHEL
### Clone GNSS-SDR's Git repository:
### <a name="download-and-build-linux">Clone GNSS-SDR's Git repository</a>:
~~~~~~
$ git clone git://github.com/gnss-sdr/gnss-sdr

View File

@ -33,9 +33,8 @@ elseif(UNIX)
if(${LINUX_DISTRIBUTION} MATCHES "Debian" OR ${LINUX_DISTRIBUTION} MATCHES "Ubuntu")
set (PACKAGE_GENERATOR "DEB")
endif(${LINUX_DISTRIBUTION} MATCHES "Debian" OR ${LINUX_DISTRIBUTION} MATCHES "Ubuntu")
if(${LINUX_DISTRIBUTION} MATCHES "Red Hat" OR
${LINUX_DISTRIBUTION} MATCHES "Fedora")
set (PACKAGE_GENERATOR "DEB")
if(${LINUX_DISTRIBUTION} MATCHES "Red Hat" OR ${LINUX_DISTRIBUTION} MATCHES "Fedora")
set (PACKAGE_GENERATOR "RPM")
endif(${LINUX_DISTRIBUTION} MATCHES "Red Hat" OR ${LINUX_DISTRIBUTION} MATCHES "Fedora")
set (PACKAGE_SOURCE_GENERATOR "TGZ;ZIP")
else()
@ -81,14 +80,14 @@ set(CPACK_STRIP_FILES "ON")
# Debian-specific settings
set(CPACK_DEBIAN_PACKAGE_SECTION "science")
set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libboost-dev (>= 1.45), libstdc++6 (>= 4.7), libc6 (>= 2.13), gnuradio (>= 3.7), libarmadillo-dev (>= 1:4.200.0), liblapack-dev (>= 3.4), libopenblas-dev (>= 0.1.1), gfortran (>= 1:4.7), libssl-dev (>= 1.0), libgflags-dev (>= 2.0)")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libboost-dev (>= 1.45), libstdc++6 (>= 4.7), libc6 (>= 2.13), gnuradio (>= 3.7), libarmadillo-dev (>= 1:4.200.0), liblapack-dev (>= 3.4), libblas-dev (>= 1.2), gfortran (>= 1:4.7), libssl-dev (>= 1.0), libgflags-dev (>= 2.0)")
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "GNSS Software Defined Receiver written in C++.
Global Navigation Satellite Systems receiver defined by software.
It performs all the signal processing from raw signal samples up to the
computation of the Position-Velocity-Time solution, including
code and phase observables. It is able to work with raw data files or,
if there is computational power enough, in real time with suitable
radiofrequency front-ends. This software is mainly developed at CTTC
radio frequency front-ends. This software is mainly developed at CTTC
(Centre Tecnologic de Telecomunicacions de Catalunya, http://www.cttc.es)
with contributions from around the world.
More info at http://gnss-sdr.org")
@ -295,7 +294,19 @@ License: GPL-3+
.
On Debian systems, the full text of the GNU General Public
License version 3 can be found in the file
`/usr/share/common-licenses/GPL-3'.")
`/usr/share/common-licenses/GPL-3'.
Files: src/core/libs/supl/*
Copyright: 2007 Tatu Mannisto
License: BSD
Files: src/core/libs/INIReader.*
Copyright: 2009 Brush Technologies
License: BSD-3-clause
Files: src/core/libs/ini.*
Copyright: 2009 Brush Technologies
License: BSD-3-clause")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/copyright"
DESTINATION "share/doc/${CPACK_PACKAGE_NAME}")