Installation on Linux

Using your package manager

Most distributions provide UHD as part of their package management. On Debian and Ubuntu systems, this will install the base UHD library, all headers and build-specific files, as well as utilities:

sudo apt-get install libuhd-dev libuhd003 uhd-host

On Fedora systems, an equivalent command would be:

sudo yum install uhd uhd-devel

On other distributions, please refer to your package manager's documentation.

Using binaries provided by Ettus Research

We provide UHD binary installers for Ubuntu and Fedora users for every stable release. Typically, we will provide binaries for latest two LTS versions of Ubuntu, and for the latest two versions of Fedora.

Using PyBOMBS

This is an automated way of installing UHD from source. See also Using PyBOMBS.

Installation on Mac OS X

Via MacPorts

We recommend using MacPorts and actively support UHD development on OS X via this method. Using MacPorts, the correct hardware device images are automatically installed for you, and there are no post install tasks. With a single command, you can be up and running in short order.

If you do not already have MacPorts installed, you will need to install it first. Make sure to follow the MacPorts shell environment changes needed such that MacPorts installed executables are found before all others. These are the only changes to the shell environment needed to execute any MacPorts-installed executable. Setting any DYLD environment variable (e.g., DYLD_LIBRARY_PATH) for general use is highly discouraged, because doing so, in our experience, leads to problems down the road that are very difficult to diagnose. OSX provides robust means for correcting DYLD-based issues even after dependencies are installed.

Once MacPorts is installed, UHD and all of its dependencies can be installed by executing

sudo port install uhd

The latest developments in UHD can be installed via

sudo port install uhd-devel

Please note that the uhd-devel port, while tested for basic compilation and functionality, is not a formal release and hence should be considered beta software which might contain bugs or major issues.