Unofficial Gnuradio Installation Procedure for Newbies on Fedora 14

A little something to help along the newcomers like me :slight_smile:

Unoffical installation guide for gnuradio on Fedora 14, January 2011
(Note
the gnuradio installation procedure may change and hence render this
guide
unusable)

  1. Get the UHD prerequisites (install using your distro’s package
    installer):

    • Git
    • C++
    • CMake
    • Boost
    • LibUSB
    • Python
    • Cheetah
    • Doxygen
    • Docutils
  2. Get th UHD source:
    git clone git://code.ettus.com/ettus/uhd.git

  3. Generate UHD makefiles with cmake
    cd /host
    mkdir build
    cd build
    cmake …/

  4. Build and install UHD
    make
    make test
    sudo make install

Ensure that libuhd.so is in the ldconfig path of your OS. In fedora 14
I
did:
updatedb &
locate libuhd.so
then put the path from the locate command in:
vim /etc/ld.so.conf.d/uhd.conf

  1. Get gnuradio:
    git clone gnuradio.git - GNU Radio

  2. Install gnuradio prerequisites. Read the instructions from the readme
    within the gnuradio directory
    cd /gnuradio
    vim README

In Fedora 14, I installed all packages except fftw using the package
manager. I had to install fftw from source because gnuradio requires a
custom-built single precision floating point version of fftw

  1. Get the fpga code for USRP2 (not sure whether this is important or
    not)
    cd /gnuradio
    cd usrp2
    rm -rf fpga (but read the inside the fpga directory readme first!)
    git clone git://ettus.sourcerepo.com/ettus/fpga.git

  2. Next we download gr-uhd component of gnuradio. Within the gnuradio
    directory run the following commands
    git branch --track next origin/next
    git checkout next

A directory called gr-uhd should be visible in the gnuradio directory.

  1. Run ./bootstrap in the gnuradio directory.

  2. Run ./configure and find out which components are not going to be
    installed due to missing prerequisites. Look for the missing
    prerequisites
    in the ./configure output and install them using your distro’s package
    manager. Some of the components are not important. In my Fedora 14
    installation I did not require gcell, gr-audio-jack, gr-audio-osx,
    gr-audio-windows and gr-comedi.

In fedora 14, after installing sdcc I had to add the following to the
bashrc path since configure could not find sdcc
export PATH=$PATH:/usr/libexec/sdcc

  1. Run make and sudo make install and then run sudo ldconfig .

  2. Create the following line in your bashrc file so that the gnuradio
    python modules can be found
    export PYTHONPATH=/usr/local/lib/python2.7/site-packages

  3. Edit /etc/security/limits.conf and add this line:

@usrp - rtprio 50

  1. Your ethernet card must be set to promiscuous mode. In fedora:
    cd /etc/sysconfig/network-scripts/
    vim ifcfg-eth0

and add the line:
PROMISC=“yes”

  1. If the UHD images have not been written onto the SD card, get them
    from
    http://www.ettus.com/downloads/uhd_images/ and write them.

Below is an extract of a procedure for writing the UHD images as posted
on
the gnuradio mailing list by Elvis D.:

Step 05.01: Locate the correct device for the SD card

Insert the SD card into the SD card reader slot of your computer.

Run gparted, the graphical disk partitioning utility to quickly
determine
which device the SD card is
connected. Usually /dev/sda would be your primary hard disk, and
/dev/sdb
would be the SD card.

Step 05.02: Write the UHD FPGA and firmware images to the SD Card

Write the new UHD FPGA image to the SD card:

$ cd uhd/host/utils
$ sudo ./usrp2_card_burner.py --dev=/dev/sdb
–fpga=/home/elvis/Downloads/usrp2-image/u2_rev3_uhd_20100706.bin

Write the new UHD firmware image to the SD card:

$ sudo ./usrp2_card_burner.py --dev=/dev/sdb
–fw=/home/elvis/Downloads/usrp2-image/txrx_uhd_20100706.bin

  1. Configure the ethernet card connected to the USRP2 as follows:
    IP: 192.168.10.1
    Subnet: 255.255.255.0

The default ip address of the USRP2 is 192.168.10.2

Important links

http://www.ettus.com/uhd_docs/manual/html/index.html

http://gnuradio.org/redmine/wiki/gnuradio/WikiStart

  1. Configure the Network card connected to the USRP2 as follows:
    IP: 192.168.1.1
    Subnet: 255.255.255.0

  2. Run uhd_find_devices to check if the USRP2 can be detected

Nick

A little something to help along the newcomers like me :slight_smile:

In Fedora 14, I installed all packages except fftw using the package
manager. I had to install fftw from source because gnuradio requires a
custom-built single precision floating point version of fftw
I haven’t had to install FFTW from source in a long time. Following:

http://gnuradio.org/redmine/wiki/gnuradio/FedoraInstall

Works for me.

  1. Get the fpga code for USRP2 (not sure whether this is important or not)
    cd /gnuradio
    cd usrp2
    rm -rf fpga (but read the inside the fpga directory readme first!)
    git clone git://ettus.sourcerepo.com/ettus/fpga.git
    http://ettus.sourcerepo.com/ettus/fpga.git

You shouldn’t need the USRP2 FPGA code, you won’t be able to compile it
anyway, unless you have the ISE tools.

Thank you for the guide of installing Gnuradio. However, I got same
error “segmentation fault(core dumped)” when executing all program about
usrp2
while I can search usrp2 location by find-usrps. Might you advise what
is wrong in the installation?

Thank you very much.

Jack