Old Ubuntu Deps: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
(Created page with "=== Saucy Salamander (13.10) === Saucy Salamander has a particular problem with PyQT and PyQWT. First, apt-get the following packages to get start. We will then manually build and install PyQT and PyQWT to get around the issue. <pre>sudo apt-get -y install git-core cmake g++ python-dev swig \ pkg-config libfftw3-dev libboost1.53-all-dev libcppunit-dev libgsl0-dev \ libusb-dev libsdl1.2-dev python-wxgtk2.8 python-numpy \ python-cheetah python-lxml doxygen libxi-dev pyth...")
 
(add 16.04 and 14.04)
 
Line 1: Line 1:
=== Xenial Xerus (16.04) ===
Building GNU Radio 3.8.x is difficult on Ubuntu 16.04 due to various dependency issues (especially due to CMake and Python versions). Please consider using GNU Radio 3.7.x instead.
For GNU Radio 3.7.x:
<pre>
sudo apt-get -y install git-core cmake g++ python-dev swig \
pkg-config libfftw3-dev libboost-all-dev libcppunit-dev libgsl0-dev \
libusb-dev libsdl1.2-dev python-wxgtk3.0 python-numpy \
python-cheetah python-lxml doxygen libxi-dev python-sip \
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev \
python-sip python-sip-dev python-qt4 python-sphinx libusb-1.0-0-dev \
libcomedi-dev libzmq-dev
</pre>
=== Trusty Tahr (14.04) ===
<pre>
sudo apt-get -y install git-core cmake g++ python-dev swig \
pkg-config libfftw3-dev libboost1.55-all-dev libcppunit-dev libgsl0-dev \
libusb-dev libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen libxi-dev python-sip \
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev \
python-sip python-sip-dev
</pre>
Then set the following environmental variable to use PyQT:
<pre>export PYTHONPATH=/opt/qt/lib/python2.7/dist-package</pre>
=== Saucy Salamander (13.10) ===
=== Saucy Salamander (13.10) ===


Saucy Salamander has a particular problem with PyQT and PyQWT. First, apt-get the following packages to get start. We will then manually build and install PyQT and PyQWT to get around the issue.
Saucy Salamander has a particular problem with PyQT and PyQWT. First, apt-get the following packages to get start. We will then manually build and install PyQT and PyQWT to get around the issue.


<pre>sudo apt-get -y install git-core cmake g++ python-dev swig \
<pre>
sudo apt-get -y install git-core cmake g++ python-dev swig \
pkg-config libfftw3-dev libboost1.53-all-dev libcppunit-dev libgsl0-dev \
pkg-config libfftw3-dev libboost1.53-all-dev libcppunit-dev libgsl0-dev \
libusb-dev libsdl1.2-dev python-wxgtk2.8 python-numpy \
libusb-dev libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen libxi-dev python-sip \
python-cheetah python-lxml doxygen libxi-dev python-sip \
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev \
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev \
libgruel3.6.1</pre>
libgruel3.6.1
</pre>
 
If you have PyQWT installed already, remove it:<br />
If you have PyQWT installed already, remove it:<br />
<code>$ sudo apt-get remove python-qwt5-qt4</code>
<code>$ sudo apt-get remove python-qwt5-qt4</code>
Line 22: Line 55:
Edit ./bashrc by adding or amending the following variables:
Edit ./bashrc by adding or amending the following variables:


<pre>export PATH=/opt/qt/bin:$PATH
<pre>
export PATH=/opt/qt/bin:$PATH
export LD_LIBRARY_PATH=/opt/qt/lib:/usr/local/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/opt/qt/lib:/usr/local/lib:$LD_LIBRARY_PATH
export PYTHONPATH=/opt/qt/lib/python2.7/dist-packages:$PYTHONPATH
export PYTHONPATH=/opt/qt/lib/python2.7/dist-packages:$PYTHONPATH
export PKG_CONFIG_PATH=/opt/qt/lib/pkgconfig:$PKG_CONFIG_PATH</pre>
export PKG_CONFIG_PATH=/opt/qt/lib/pkgconfig:$PKG_CONFIG_PATH
</pre>
Either restart the terminal or reset your environment:<br />
Either restart the terminal or reset your environment:<br />
<code>$ source ~/.bashrc</code>
<code>$ source ~/.bashrc</code>
Line 32: Line 67:
http://www.riverbankcomputing.com/software/pyqt/download
http://www.riverbankcomputing.com/software/pyqt/download


<pre>   $ tar xzf PyQt-x11-gpl-4.10.3.tar.gz
<pre>
  $ tar xzf PyQt-x11-gpl-4.10.3.tar.gz
   $ cd PyQt-x11-gpl-4.10.3
   $ cd PyQt-x11-gpl-4.10.3
   $ python configure.py -b /opt/qt/bin -d /opt/qt/lib/python2.7/dist-packages -v /opt/qt/share/sip
   $ python configure.py -b /opt/qt/bin -d /opt/qt/lib/python2.7/dist-packages -v /opt/qt/share/sip
   $ make
   $ make
   $ sudo make install</pre>
   $ sudo make install
</pre>
Download and install PyQWT version 5.2.0<br />
Download and install PyQWT version 5.2.0<br />
http://pyqwt.sourceforge.net/download.html
http://pyqwt.sourceforge.net/download.html


<pre>   $ tar xzf PyQwt-5.2.0.tar.gz
<pre>
  $ tar xzf PyQwt-5.2.0.tar.gz
   $ cd PyQwt-5.2.0/configure
   $ cd PyQwt-5.2.0/configure
   $ ./configure.py -Q ../qwt-5.2 --module-install-path=/opt/qt/lib/python2.7/dist-packages/PyQt4/Qwt5
   $ ./configure.py -Q ../qwt-5.2 --module-install-path=/opt/qt/lib/python2.7/dist-packages/PyQt4/Qwt5
   $ make
   $ make
   $ sudo make install</pre>
   $ sudo make install
</pre>
If you've already built GNU Radio, first delete CMakeCache.txt in the top build directory. You should then only have to 'make clean' in gr-qtgui.
If you've already built GNU Radio, first delete CMakeCache.txt in the top build directory. You should then only have to 'make clean' in gr-qtgui.


Line 53: Line 92:
'''Note:''' At release, Ubuntu defaults the 'libboost-all-dev' package to libboost-*.49, which is incompatible with GNURadio. Thus, until the Ubuntu default Boost install catches up, you must manually specify 'libboost1.53-all-dev'.
'''Note:''' At release, Ubuntu defaults the 'libboost-all-dev' package to libboost-*.49, which is incompatible with GNURadio. Thus, until the Ubuntu default Boost install catches up, you must manually specify 'libboost1.53-all-dev'.


<pre>sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
<pre>
sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
pkg-config libfftw3-dev libboost1.53-all-dev libcppunit-dev libgsl0-dev \
pkg-config libfftw3-dev libboost1.53-all-dev libcppunit-dev libgsl0-dev \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev qt4-default</pre>
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev qt4-default
</pre>


=== Precise Pangolin (12.04) ===
=== Precise Pangolin (12.04) ===


<pre>sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
<pre>
sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
pkg-config libboost1.48-all-dev libfftw3-dev libcppunit-dev libgsl0-dev \
pkg-config libboost1.48-all-dev libfftw3-dev libcppunit-dev libgsl0-dev \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev </pre>
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev
</pre>


=== Natty Narwhal (11.04) ===
=== Natty Narwhal (11.04) ===


<pre>sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
<pre>
sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
pkg-config libboost-all-dev libfftw3-dev libcppunit-dev libgsl0-dev \
pkg-config libboost-all-dev libfftw3-dev libcppunit-dev libgsl0-dev \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev </pre>
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev
</pre>


=== Maverick (10.10) ===
=== Maverick (10.10) ===


<pre>sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
<pre>
sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
swig g++ automake autoconf libtool python-dev libfftw3-dev \
swig g++ automake autoconf libtool python-dev libfftw3-dev \
libcppunit-dev libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries \
libcppunit-dev libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries \
Line 83: Line 129:
libqt4-dev python-numpy ccache python-opengl libgsl0-dev \
libqt4-dev python-numpy ccache python-opengl libgsl0-dev \
python-cheetah python-lxml doxygen qt4-dev-tools \
python-cheetah python-lxml doxygen qt4-dev-tools \
libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4</pre>
libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4
</pre>
 
=== Lucid (10.04) ===
=== Lucid (10.04) ===


<pre>sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
<pre>
sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
swig g++ automake autoconf libtool python-dev libfftw3-dev \
swig g++ automake autoconf libtool python-dev libfftw3-dev \
libcppunit-dev libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries \
libcppunit-dev libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries \
Line 92: Line 141:
libqt4-dev python-numpy ccache python-opengl libgsl0-dev \
libqt4-dev python-numpy ccache python-opengl libgsl0-dev \
python-cheetah python-lxml doxygen qt4-dev-tools \
python-cheetah python-lxml doxygen qt4-dev-tools \
libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4</pre>
libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4
</pre>

Latest revision as of 11:42, 2 April 2023

Xenial Xerus (16.04)

Building GNU Radio 3.8.x is difficult on Ubuntu 16.04 due to various dependency issues (especially due to CMake and Python versions). Please consider using GNU Radio 3.7.x instead.

For GNU Radio 3.7.x:

sudo apt-get -y install git-core cmake g++ python-dev swig \
pkg-config libfftw3-dev libboost-all-dev libcppunit-dev libgsl0-dev \
libusb-dev libsdl1.2-dev python-wxgtk3.0 python-numpy \
python-cheetah python-lxml doxygen libxi-dev python-sip \
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev \
python-sip python-sip-dev python-qt4 python-sphinx libusb-1.0-0-dev \
libcomedi-dev libzmq-dev

Trusty Tahr (14.04)

sudo apt-get -y install git-core cmake g++ python-dev swig \
pkg-config libfftw3-dev libboost1.55-all-dev libcppunit-dev libgsl0-dev \
libusb-dev libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen libxi-dev python-sip \
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev \
python-sip python-sip-dev

Then set the following environmental variable to use PyQT:

export PYTHONPATH=/opt/qt/lib/python2.7/dist-package

Saucy Salamander (13.10)

Saucy Salamander has a particular problem with PyQT and PyQWT. First, apt-get the following packages to get start. We will then manually build and install PyQT and PyQWT to get around the issue.

sudo apt-get -y install git-core cmake g++ python-dev swig \
pkg-config libfftw3-dev libboost1.53-all-dev libcppunit-dev libgsl0-dev \
libusb-dev libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen libxi-dev python-sip \
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev \
libgruel3.6.1

If you have PyQWT installed already, remove it:
$ sudo apt-get remove python-qwt5-qt4

Make sure SIP is installed:
$ sudo apt-get install python-sip python-sip-dev

We'll set up a separate directory to install into to make it keep it nicely separated from anything else (in case Ubuntu fixes this problem).
$ sudo mkdir /opt/qt

First, set up your environment

Edit ./bashrc by adding or amending the following variables:

export PATH=/opt/qt/bin:$PATH
export LD_LIBRARY_PATH=/opt/qt/lib:/usr/local/lib:$LD_LIBRARY_PATH
export PYTHONPATH=/opt/qt/lib/python2.7/dist-packages:$PYTHONPATH
export PKG_CONFIG_PATH=/opt/qt/lib/pkgconfig:$PKG_CONFIG_PATH

Either restart the terminal or reset your environment:
$ source ~/.bashrc

Download and install PyQt version 4.10.3
http://www.riverbankcomputing.com/software/pyqt/download

   $ tar xzf PyQt-x11-gpl-4.10.3.tar.gz
   $ cd PyQt-x11-gpl-4.10.3
   $ python configure.py -b /opt/qt/bin -d /opt/qt/lib/python2.7/dist-packages -v /opt/qt/share/sip
   $ make
   $ sudo make install

Download and install PyQWT version 5.2.0
http://pyqwt.sourceforge.net/download.html

   $ tar xzf PyQwt-5.2.0.tar.gz
   $ cd PyQwt-5.2.0/configure
   $ ./configure.py -Q ../qwt-5.2 --module-install-path=/opt/qt/lib/python2.7/dist-packages/PyQt4/Qwt5
   $ make
   $ sudo make install

If you've already built GNU Radio, first delete CMakeCache.txt in the top build directory. You should then only have to 'make clean' in gr-qtgui.

Run cmake and make like you would normally. With the environmental variables pointing to the new PyQT and PyQWT versions we've installed all gr-qtui displays and widgets should work properly now.

Raring Ringtail (13.04)

Note: At release, Ubuntu defaults the 'libboost-all-dev' package to libboost-*.49, which is incompatible with GNURadio. Thus, until the Ubuntu default Boost install catches up, you must manually specify 'libboost1.53-all-dev'.

sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
pkg-config libfftw3-dev libboost1.53-all-dev libcppunit-dev libgsl0-dev \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev qt4-default

Precise Pangolin (12.04)

sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
pkg-config libboost1.48-all-dev libfftw3-dev libcppunit-dev libgsl0-dev \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev

Natty Narwhal (11.04)

sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
pkg-config libboost-all-dev libfftw3-dev libcppunit-dev libgsl0-dev \
libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev

Maverick (10.10)

sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
swig g++ automake autoconf libtool python-dev libfftw3-dev \
libcppunit-dev libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries \
libsdl1.2-dev python-wxgtk2.8 git guile-1.8-dev \
libqt4-dev python-numpy ccache python-opengl libgsl0-dev \
python-cheetah python-lxml doxygen qt4-dev-tools \
libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4

Lucid (10.04)

sudo apt-get -y install libfontconfig1-dev libxrender-dev libpulse-dev \
swig g++ automake autoconf libtool python-dev libfftw3-dev \
libcppunit-dev libboost-all-dev libusb-dev fort77 sdcc sdcc-libraries \
libsdl1.2-dev python-wxgtk2.8 git-core guile-1.8-dev \
libqt4-dev python-numpy ccache python-opengl libgsl0-dev \
python-cheetah python-lxml doxygen qt4-dev-tools \
libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4