# Installing HackRF Software

HackRF software includes HackRF Tools and libhackrf. HackRF Tools are the commandline utilities that let you interact with your HackRF. libhackrf is a low level library that enables software on your computer to operate with HackRF.

## Install Using Package Managers

Unless developing or testing new features for HackRF, we highly recommend that most users use build systems or package managers provided for their operating system. Our suggested operating system for use with HackRF is Ubuntu.

### FreeBSD

You can use the binary package: `# pkg install hackrf`

You can also build and install from ports:

    # cd /usr/ports/comms/hackrf
    # make install

### Linux: Arch

    pacman -S hackrf

### Linux: Fedora / Red Hat

`sudo dnf install hackrf -y`

### Linux: Gentoo

    emerge -a net-wireless/hackrf-tools

### Linux: Ubuntu / Debian

`sudo apt-get install hackrf`

### OS X (10.5+): Homebrew

`brew install hackrf`

### OS X (10.5+): MacPorts

`sudo port install hackrf`

### Windows: Binaries

Windows users can use radioconda to get the required binaries installed.

Alternatively, binaries are available as build artifacts under the ‘Actions’-tab on github here (GitHub Login needed).

## Installing From Source

### Linux / OS X / *BSD: Building HackRF Software From Source

Acquire the source for the HackRF tools from either a release archive or git: `git clone https://github.com/greatscottgadgets/hackrf.git`

Once you have the source downloaded, the host tools can be built as follows:

    cd hackrf/host
    mkdir build
    cd build
    cmake ..
    make
    sudo make install
    sudo ldconfig

If you have HackRF hardware, you may need to update the firmware to match the host tools versions.

### Windows: Building HackRF Software From Source

Install Visual Studio Community (2015 or later) and CMake (at least version 3.21.4).

Install library dependencies using vcpkg:

    git clone https://github.com/microsoft/vcpkg
    cd vcpkg
    bootstrap-vcpkg.bat
    vcpkg install libusb fftw3 pthreads pkgconf

Open the Visual Studio Developer Command Prompt, and change to the directory where you unpacked the HackRF source.

The following steps assume you installed vcpkg in `C:\vcpkg`.

Configure CMake and build the code:

    set PKG_CONFIG=C:\vcpkg\installed\x64-windows\tools\pkgconf\pkgconf.exe
    set PKG_CONFIG_PATH=C:\vcpkg\installed\x64-windows\lib\pkgconfig
    set CMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake
    cmake -B host\build host
    cmake --build host\build

CMake will generate a `HackRF.sln` project file which you can open in Visual Studio for editing and development.