- Building UHD Software from Source
Building UHD Software from Source¶
Follow the instructions on this page to build and install UHD software from source.
PyBOMBS is a command-line tool for Linuxes (and some Unixes) from the GNU Radio ecosystem and will do a source build of UHD, including setting up prerequisites (regardless of the distribution) with the following command:
$ ./pybombs install uhd
Head to the PyBOMBS Homepage for more instructions. PyBOMBS can install UHD (as well as GNU Radio or similar projects) both into system directories as well as into user's home directories, omitting the requirement for superuser access.
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 updateOur 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. This is what you should be using if you need a 'stable' release.
We might also be publishing experimental feature branches which can then be found in the same repository.All of our releases are associated with tags in the repository.
Follow the build guide for prerequisites or run one of the quick install commands for Fedora or Ubuntu:
sudo apt-get install libboost-all-dev libusb-1.0-0-dev python-cheetah doxygen python-docutils cmake
sudo yum -y install boost-devel libusb1-devel python-cheetah doxygen python-docutils cmake
- Follow the Build Guide.
- Download the firmware and FPGA images necessary to use a USRP device. Instructions are below.
Using a USB-based device?¶
Firmware and FPGA images¶
Download Pre-Built Images
For maint and master branch (and in some cases, for development branches) we provide pre-built FPGA images, so you don't need to build them yourself. Unless you're modifying the FPGA image, we strongly advise you to use these images rather than building your own.You can download images from this location:
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).
For typical Linux installs, you can simply run
on the command line and it will do all you need.
Otherwise, unless you are using a custom install prefix, the UHD Images Downloader can be found in the following locations:
- NOTE: In most instances, you must be a superuser/Administrator to use this feature.
Using the USRP X300/X310 with PCIeTo 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.