Building UHD Software from Source

Follow the instructions on this page to build and install UHD software from source.

Get the Source Code

The UHD source is stored in a Git repository. To download it, follow these instructions:

git clone git://github.com/EttusResearch/uhd.git

If you also want the FPGA code (which is not necessary for building UHD and applications which depend on it), run:

git clone --recursive git://github.com/EttusResearch/uhd.git

This will populate the 'fpga-src' submodule inside the repository. You can also do this after cloning the repository by running these commands from the top level source directory:

git submodule init
git submodule update

Our source code is divided into two branches:
  • master: This is the main branch, with updated new features and bug fixes.
  • maint: This branch has all bugfixes since the last major release, but there are no new features.
All of our releases are associated with tags in the repository.

Download Prerequisites

Follow the build guide for prerequisites or run one of the quick install commands for Fedora or Ubuntu:

Ubuntu

sudo apt-get install libboost-all-dev libusb-1.0-0-dev python-cheetah doxygen python-docutils

Fedora

sudo yum -y install boost-devel libusb1-devel python-cheetah doxygen python-docutils

Build instructions

  • Follow the Build Guide.
  • Download the firmware and FPGA images necessary to use a USRP device. Instructions are below.

Post-installation tasks

Using a USB-based device?

Firmware and FPGA images

Download Pre-Built Images

We build two sets of firmware/FPGA images, one for each branch.

  • If you are using the master branch, use the images from our Master Images directory.
  • If you are using the maint branch or any of our releases, use the images from our Maint Images directory.

UHD Images Downloader

The UHD Images Downloader utility downloads images compatible with the current host code and places them in the default image directory (or a user-specified directory).

Unless you are using a custom install prefix, the UHD Images Downloader can be found in the following locations:

  • Linux: /usr/local/lib/uhd/utils/uhd_images_downloader.py
  • Windows: C:\Program Files\share\uhd\utils\uhd_images_downloader.py
  • NOTE: In most instances, you must be a superuser/Administrator to use this feature.

Using the USRP X300/X310 with PCIe

To be able to use USRP X300 or USRP X310 devices over PCIe, follow these instructions:

NOTE: Using the USRP X300/X310 with PCIe is not supported with OS X.