Quick-and-dirty GNU Radio (Geeko powered!)

Hello,

When you build GNU Radio for the first time successfully (after twenty
times calling ./configure, until you have all the dependencies), you get
a sense of pleasure. Maybe, this initial overhead is desired, as it
prevents the community from noobs without the iron will of getting GNU
Radio running. Personally, I don’t think it’s that difficult.

GNU Radio itself provides an Ubuntu repository, but it doesn’t seem to
be maintaned (last modified in Oct 2009). So some time ago, I started to
package GNU Radio for my own system.

I’ve used the openSUSE Build Service [1] for almost a year, and – after
some initial overhead – it has been working like a charm for me. But as
I won’t use GNU Radio for the next term, I can’t keep the repository
updated any longer. You can find the repository under [2] and you are
invited to clone, branch, and maintain that repo.

A few notes:

  • The package “gnuradio” is used to build the latest stable release
    (gnuradio-3.3.0) and the “next” release. The sources are fetched and the
    spec-files are updated by the script gnuradio-next_update.sh. But as
    there are a few patches to get an package according to the openSUSE
    packaging guidelines, you can’t always update the package with the
    following steps. Sometimes, you have to adapt the patches:
    1. sh gnuradio-next_update.sh
    2. osc rm gnuradio-next-.tar.bz2
    3. osc add gnuradio-next-.tar.bz2
    4. osc vc # Edit the changelog
    5. osc ci -m ‘update’
  • Both, gnuradio and gnuradio-next, have their files in the gnuradio
    repository. The gnuradio-next package is only a link onto the gnuradio
    package, so that the OBS uses the gnuradio-next.spec instead of the
    gnuradio.spec.
  • When I startet the packaging process, OBS didn’t provide the feature
    to create a tar-ball from a git repository. This feature was implemented
    in the meanwhile. Nevertheless, the gnuradio-next_update.sh,
    gnuradio_update.sh and libuhd_update.sh scripts are more flexible, as
    they extract some information from the meta information located in the
    git repository.
  • The last build I’ve used productively (with USRP2) was based on an
    checkout from October or November.
  • I’ve just updated to the current HEAD and resolved some building
    errors (I had to adapt the patch-file for the package gnuradio-next, and
    meanwhile, libuhd.so changed to libuhd.so.002, so that package needed a
    rename, too).
  • I haven’t minded new features implemented since October or November
    (e.g. VOLK compiled successfully, but I didn’t test it).

If you have already an openSUSE 11.3 installation and you just want to
play with GNU Radio, just add the download repository to zypper / yast:

zypper ar -f

http://download.opensuse.org/repositories/home:/chkpnt:/gnuradio/openSUSE_11.3/home:chkpnt:gnuradio.repo

zypper in gnuradio-next

You’ll need gnuradio-next-devel, too, if you want to compile your own
blocks against GNU Radio. I’ve tested the packages with a clean
installation within a VM and it worked for me. Nevertheless, I want to
mention that the last time I used the packages productively (with USRP2)
was two / three months ago.

With SUSE Studio it is very simple to build an appliance based on RPMs
[3]. I’ve composed a GNU Radio appliance that can be found in the SUSE
Gallery [4]. There is a Live-CD / USB-Stick, if you just want to try out
GNU Radio on a new system. And there is a VMware-Appliance, if you want
to use GNU Radio in parallel to your existing operating system. I have
used this VMware approach since UHD works fine, as I have mainly worked
under Windows (had very disappointing experience with Xilinx ISE 10
under openSUSE… maybe, ISE 12 is running better…). To download, you
have to sign in (OpenID like Google is supported). Nevertheless, as I
don’t know how long SUSE Gallery stores the appliances, they are
mirrored on [5], too.

Cheers, and have fun,
Gregor

[1] http://build.opensuse.org
[2] https://build.opensuse.org/project/show?project=home:chkpnt:gnuradio
[3] http://www.susestudio.com
[4] http://susegallery.com/a/MjwCkX/gnu-radio--2
[5] http://www.dschung.de/gnuradio/