installing from source

First, install all required packages:

sudo aptitude install swig build-essential git-core automake libtool python-dev libfftw3-dev libcppunit-dev libusb-dev fort77  sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy guile-1.8 libqt4-dev python-numpy python-opengl libgsl0-dev python-cheetah python-lxml qt4-dev-tools libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools libasound2-dev libboost-all-dev

Checkout the GnuRadio trunk

git clone http://gnuradio.org/git/gnuradio.git or git clone git://gnuradio.org/gnuradio.git (after the first time, run git pull instead)

Finally bootstrap, configure, build and install:

  • ./bootstrap
  • ./configure
  • make
  • sudo make install

choose components

I actually don’t need some of the stuff built by default, so the configure command I use is:

./configure --disable-gr-msdd6000 --disable-gr-audio-oss --disable-gr-cvsd-vocoder --disable-gr-gpio --disable-gr-radar-mono --disable-gr-radio-astronomy --disable-gr-pager --disable-gr-atsc

install grc

To have a grc item in your Gnome menu (under Programming), run grc_setup_freedesktop install

permissions

You need to create a group (“usrp”), add your user to it, and create a udev rule that permits users in the “usrp” group to access (r/w) the usrp device. The following series of commands does this:

sudo addgroup usrp
sudo addgroup `whoami` usrp
echo '
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="fffe", ATTR{idProduct}=="0002", GROUP:="usrp", MODE:"0660"' > tmpfile
sudo chown root.root tmpfile
sudo mv tmpfile /etc/udev/rules.d/10-usrp.rules

Then make udev read the new rules (sudo udevadm control --reload-rules) or restart udev (sudo service udev restart).

test usb speed

To test the speed of your usb host, run /usr/local/share/gnuradio/examples/usrp/usrp_benchmark_usb.py

broken libtool

  • Add a new line with /usr/local/lib to the file /etc/ld.so.conf
  • Run sudo ldconfig

OpenGL sinks

To enable OpenGL sinks, add the following to ~/.gnuradio/config.conf

[wxgui]
style=gl

binary .deb packages

  • Add deb http://gnuradio.org/ubuntu stable main contrib to your /etc/apt/sources.list
  • Remove any previous GnuRadio installation: sudo make uninstall (in the directory of the GSR source)
  • sudo aptitude update; sudo aptitude install gnuradio
  • sudo addgroup <USERNAME> usrp

References

  1. http://gnuradio.org/redmine/projects/gnuradio/wiki/UbuntuInstall
  2. http://gnuradio.org/redmine/projects/gnuradio/wiki/DebianPackages
Advertisements

5 Responses to “GnuRadio installation”

  1. silkenpy Says:

    If anyone need to use SWIG for Python, check my blog.
    http://silkenpy.wordpress.com/

    Thanks,

  2. azimout Says:

    It seems configuring the GNU Radio source code requires a Fortran compiler now. Strangely, the error message I was getting was “error: cannot find usable Python headers”. After installing fort77 (in Karmic), the error disappeared…
    Related discuss-gnuradio thread (though aimed at OS X):
    http://lists.gnu.org/archive/html/discuss-gnuradio/2009-08/msg00067.html

  3. azimout Says:

    If the configure script tells you:

    checking for ALSA… no
    gr-audio-alsa requires package alsa, not found.

    you need to install the package libasound2-dev

  4. sagarika65 Says:

    While installing gnu radio in ubuntu after installing pythonpackage when it tries to install g++ it is showing this error
    Failed to fetch http://in.archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.7/g++-4.7_4.7.2-23ubuntu2_i386.deb 404 Not Found [IP: 91.189.92.177 80]
    E: Unable to fetch some archives, maybe run apt-get update or try with –fix-missing?

    1. azimout Says:

      Yes. Have you tried doing what it suggests?

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s