From ce49451e8083113a763922d2ea514de5172deb3c Mon Sep 17 00:00:00 2001 From: straithe Date: Wed, 22 Sep 2021 01:23:09 -0400 Subject: [PATCH 1/3] Update installing hackrf software documentation --- ...ips.rst => installing_hackrf_software.rst} | 186 +++++++----------- 1 file changed, 75 insertions(+), 111 deletions(-) rename docs/source/{operating_system_tips.rst => installing_hackrf_software.rst} (68%) diff --git a/docs/source/operating_system_tips.rst b/docs/source/installing_hackrf_software.rst similarity index 68% rename from docs/source/operating_system_tips.rst rename to docs/source/installing_hackrf_software.rst index 7c7bec71..0e579554 100644 --- a/docs/source/operating_system_tips.rst +++ b/docs/source/installing_hackrf_software.rst @@ -1,107 +1,74 @@ .. _operating_system_tips: ================================================ -Operating System Tips +Installing HackRF Software ================================================ -Here are some software setup tips for particular Operating Systems and Linux distributions. - - - -Package managers -~~~~~~~~~~~~~~~~ - -We highly recommend that, unless developing or testing new features of HackRF, most users use build systems or package management provided for their operating system. - - - -Linux -^^^^^ - -Ubuntu / Debian -+++++++++++++++ - -``sudo apt install gqrx-sdr`` - -Fedora / Red Hat -++++++++++++++++ - -``sudo dnf install gnuradio gr-osmosdr hackrf gqrx -y`` - -Gentoo Linux -++++++++++++ - -.. code-block :: sh - - emerge -a net-wireless/hackrf-tools - USE="hackrf" emerge -a net-wireless/gr-osmosdr - - -Arch Linux -++++++++++ - -.. code-block :: sh - - pacman -S gnuradio gnuradio-osmosdr - pacman -S gnuradio-companion - - - -OS X (10.5+) -^^^^^^^^^^^^ - -MacPorts -++++++++ - -``sudo port install gr-osmosdr`` - -Homebrew -++++++++ - -``brew install gr-osmosdr`` - - - -Windows -^^^^^^^ - -Binaries are provided as part of the PothosSDR project, they can be downloaded `here `__. - +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 build and install from ports: +You can also build and install from ports: .. code-block :: sh # cd /usr/ports/comms/hackrf # make install +Linux: Arch ++++++++++++ +.. code-block :: sh -Building from source -~~~~~~~~~~~~~~~~~~~~ + pacman -S gnuradio gnuradio-osmosdr + pacman -S gnuradio-companion -Linux / OS X / \*BSD -^^^^^^^^^^^^^^^^^^^^ +Linux: Fedora / Red Hat ++++++++++++++++++++++++ -Preparing Your System -+++++++++++++++++++++ +``sudo dnf install gnuradio gr-osmosdr hackrf gqrx -y`` -First of all, make sure that your system is up to date using your operating system provided update method. +Linux: Gentoo ++++++++++++++ -Installing using PyBOMBS -^^^^^^^^^^^^^^^^^^^^^^^^ +.. code-block :: sh -The GNU Radio project has a `build system `__ that covers the core libraries, drivers for SDR hardware, and many out of tree modules. PyBOMBs will take care of installing dependencies for you. + emerge -a net-wireless/hackrf-tools + USE="hackrf" emerge -a net-wireless/gr-osmosdr +Linux: Ubuntu / Debian +++++++++++++++++++++++ -Building HackRF tools from source -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +``sudo apt-get install hackrf`` + +OS X (10.5+): Homebrew +++++++++++++++++++++++ + +``brew install gr-osmosdr`` + +OS X (10.5+): MacPorts +++++++++++++++++++++++ + +``sudo port install gr-osmosdr`` + +Windows: Binaries ++++++++++++++++++ + +Binaries are provided as part of the PothosSDR project, they can be downloaded `here `__. + +----------- + +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/mossmann/hackrf.git`` @@ -121,11 +88,8 @@ If you have HackRF hardware, you may need to :ref:`update the firmware lib /machine:x64 /def:libfftw3f-3.def`` @@ -153,29 +143,3 @@ Create library definition for MSVC to link to ``C:\fftw-3.3.5-dll64> lib /machin -DFFTW_LIBRARIES=C:\fftw-3.3.5-dll64\libfftw3f-3.lib CMake will produce a solution file named ``HackRF.sln`` and a series of project files which can be built with msbuild as follows: ``c:\hackrf\host\build> msbuild HackRF.sln`` - - - -Cygwin -++++++ - -.. code-block :: sh - - mkdir host/build - cd host/build - cmake ../ -G "Unix Makefiles" -DCMAKE_LEGACY_CYGWIN_WIN32=1 -DLIBUSB_INCLUDE_DIR=/usr/local/include/libusb-1.0/ - make - make install - - - -MinGW -+++++ - -.. code-block :: sh - - mkdir host/build - cd host/build - cmake ../ -G "MSYS Makefiles" -DLIBUSB_INCLUDE_DIR=/usr/local/include/libusb-1.0/ - make - make install From 92e3f48cec5590e93a0c9f4926e99d63b21fd28b Mon Sep 17 00:00:00 2001 From: straithe Date: Wed, 22 Sep 2021 01:29:40 -0400 Subject: [PATCH 2/3] Add Ubuntu instructions --- docs/source/operating_system_tips.rst | 145 ++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 docs/source/operating_system_tips.rst diff --git a/docs/source/operating_system_tips.rst b/docs/source/operating_system_tips.rst new file mode 100644 index 00000000..0e579554 --- /dev/null +++ b/docs/source/operating_system_tips.rst @@ -0,0 +1,145 @@ +.. _operating_system_tips: + +================================================ +Installing HackRF Software +================================================ + +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: + +.. code-block :: sh + + # cd /usr/ports/comms/hackrf + # make install + +Linux: Arch ++++++++++++ + +.. code-block :: sh + + pacman -S gnuradio gnuradio-osmosdr + pacman -S gnuradio-companion + +Linux: Fedora / Red Hat ++++++++++++++++++++++++ + +``sudo dnf install gnuradio gr-osmosdr hackrf gqrx -y`` + +Linux: Gentoo ++++++++++++++ + +.. code-block :: sh + + emerge -a net-wireless/hackrf-tools + USE="hackrf" emerge -a net-wireless/gr-osmosdr + +Linux: Ubuntu / Debian +++++++++++++++++++++++ + +``sudo apt-get install hackrf`` + +OS X (10.5+): Homebrew +++++++++++++++++++++++ + +``brew install gr-osmosdr`` + +OS X (10.5+): MacPorts +++++++++++++++++++++++ + +``sudo port install gr-osmosdr`` + +Windows: Binaries ++++++++++++++++++ + +Binaries are provided as part of the PothosSDR project, they can be downloaded `here `__. + +----------- + +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/mossmann/hackrf.git`` + +Once you have the source downloaded, the host tools can be built as follows: + +.. code-block :: sh + + cd hackrf/host + mkdir build + cd build + cmake .. + make + sudo make install + sudo ldconfig + +If you have HackRF hardware, you may need to :ref:`update the firmware ` to match the host tools versions. + + + +Windows: Prerequisites for Cygwin, MinGW, or Visual Studio +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + * cmake-2.8.12.1 or later from http://www.cmake.org/cmake/resources/software.html + * libusbx-1.0.18 or later from http://sourceforge.net/projects/libusbx/files/latest/download?source=files + * fftw-3.3.5 or later from http://www.fftw.org/install/windows.html + * Install Windows driver for HackRF hardware or use Zadig see http://sourceforge.net/projects/libwdi/files/zadig + * If you want to use Zadig select HackRF USB device and just install/replace it with WinUSB driver. + +Note for Windows build: You shall always execute hackrf-tools from Windows command shell and not from Cygwin or MinGW shell because on Cygwin/MinGW Ctrl+C is not managed correctly and especially for hackrf_transfer the Ctrl+C (abort) will not stop correctly and will corrupt the file. + + + +Windows: Installing HackRF Software via Cygwin +++++++++++++++++++++++++++++++++++++++++++++++ + +.. code-block :: sh + + mkdir host/build + cd host/build + cmake ../ -G "Unix Makefiles" -DCMAKE_LEGACY_CYGWIN_WIN32=1 -DLIBUSB_INCLUDE_DIR=/usr/local/include/libusb-1.0/ + make + make install + + + +Windows: Installing HackRF Software via MinGW ++++++++++++++++++++++++++++++++++++++++++++++ + +.. code-block :: sh + + mkdir host/build + cd host/build + cmake ../ -G "MSYS Makefiles" -DLIBUSB_INCLUDE_DIR=/usr/local/include/libusb-1.0/ + make + make install + + + +Windows: Installing HackRF Software via Visual Studio 2015 x64 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Create library definition for MSVC to link to ``C:\fftw-3.3.5-dll64> lib /machine:x64 /def:libfftw3f-3.def`` + +.. code-block :: sh + + c:\hackrf\host\build> cmake ../ -G "Visual Studio 14 2015 Win64" \ + -DLIBUSB_INCLUDE_DIR=c:\libusb-1.0.21\libusb \ + -DLIBUSB_LIBRARIES=c:\libusb-1.0.21\MS64\dll\lib\libusb-1.0.lib \ + -DTHREADS_PTHREADS_INCLUDE_DIR=c:\pthreads-w32-2-9-1-release\Pre-built.2\include \ + -DTHREADS_PTHREADS_WIN32_LIBRARY=c:\pthreads-w32-2-9-1-release\Pre-built.2\lib\x64\pthreadVC2.lib \ + -DFFTW_INCLUDES=C:\fftw-3.3.5-dll64 \ + -DFFTW_LIBRARIES=C:\fftw-3.3.5-dll64\libfftw3f-3.lib + +CMake will produce a solution file named ``HackRF.sln`` and a series of project files which can be built with msbuild as follows: ``c:\hackrf\host\build> msbuild HackRF.sln`` From dcc23c40d0665e7e6c3a6ac46fa6d5ee6407c0f9 Mon Sep 17 00:00:00 2001 From: straithe Date: Mon, 25 Oct 2021 17:41:12 -0400 Subject: [PATCH 3/3] Remove non-HackRF references --- docs/source/index.rst | 2 +- docs/source/installing_hackrf_software.rst | 10 +- docs/source/operating_system_tips.rst | 145 --------------------- 3 files changed, 5 insertions(+), 152 deletions(-) delete mode 100644 docs/source/operating_system_tips.rst diff --git a/docs/source/index.rst b/docs/source/index.rst index a87dda4d..c38d863d 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -17,7 +17,7 @@ Welcome to HackRF's documentation! :maxdepth: 2 :caption: Software - operating_system_tips + installing_hackrf_software getting_started_hackrf_gnuradio software_support libhackrf_api diff --git a/docs/source/installing_hackrf_software.rst b/docs/source/installing_hackrf_software.rst index 0e579554..db293dcc 100644 --- a/docs/source/installing_hackrf_software.rst +++ b/docs/source/installing_hackrf_software.rst @@ -26,13 +26,12 @@ Linux: Arch .. code-block :: sh - pacman -S gnuradio gnuradio-osmosdr - pacman -S gnuradio-companion + pacman -S hackrf Linux: Fedora / Red Hat +++++++++++++++++++++++ -``sudo dnf install gnuradio gr-osmosdr hackrf gqrx -y`` +``sudo dnf install hackrf -y`` Linux: Gentoo +++++++++++++ @@ -40,7 +39,6 @@ Linux: Gentoo .. code-block :: sh emerge -a net-wireless/hackrf-tools - USE="hackrf" emerge -a net-wireless/gr-osmosdr Linux: Ubuntu / Debian ++++++++++++++++++++++ @@ -50,12 +48,12 @@ Linux: Ubuntu / Debian OS X (10.5+): Homebrew ++++++++++++++++++++++ -``brew install gr-osmosdr`` +``brew install hackrf`` OS X (10.5+): MacPorts ++++++++++++++++++++++ -``sudo port install gr-osmosdr`` +``sudo port install hackrf`` Windows: Binaries +++++++++++++++++ diff --git a/docs/source/operating_system_tips.rst b/docs/source/operating_system_tips.rst deleted file mode 100644 index 0e579554..00000000 --- a/docs/source/operating_system_tips.rst +++ /dev/null @@ -1,145 +0,0 @@ -.. _operating_system_tips: - -================================================ -Installing HackRF Software -================================================ - -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: - -.. code-block :: sh - - # cd /usr/ports/comms/hackrf - # make install - -Linux: Arch -+++++++++++ - -.. code-block :: sh - - pacman -S gnuradio gnuradio-osmosdr - pacman -S gnuradio-companion - -Linux: Fedora / Red Hat -+++++++++++++++++++++++ - -``sudo dnf install gnuradio gr-osmosdr hackrf gqrx -y`` - -Linux: Gentoo -+++++++++++++ - -.. code-block :: sh - - emerge -a net-wireless/hackrf-tools - USE="hackrf" emerge -a net-wireless/gr-osmosdr - -Linux: Ubuntu / Debian -++++++++++++++++++++++ - -``sudo apt-get install hackrf`` - -OS X (10.5+): Homebrew -++++++++++++++++++++++ - -``brew install gr-osmosdr`` - -OS X (10.5+): MacPorts -++++++++++++++++++++++ - -``sudo port install gr-osmosdr`` - -Windows: Binaries -+++++++++++++++++ - -Binaries are provided as part of the PothosSDR project, they can be downloaded `here `__. - ------------ - -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/mossmann/hackrf.git`` - -Once you have the source downloaded, the host tools can be built as follows: - -.. code-block :: sh - - cd hackrf/host - mkdir build - cd build - cmake .. - make - sudo make install - sudo ldconfig - -If you have HackRF hardware, you may need to :ref:`update the firmware ` to match the host tools versions. - - - -Windows: Prerequisites for Cygwin, MinGW, or Visual Studio -++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - - * cmake-2.8.12.1 or later from http://www.cmake.org/cmake/resources/software.html - * libusbx-1.0.18 or later from http://sourceforge.net/projects/libusbx/files/latest/download?source=files - * fftw-3.3.5 or later from http://www.fftw.org/install/windows.html - * Install Windows driver for HackRF hardware or use Zadig see http://sourceforge.net/projects/libwdi/files/zadig - * If you want to use Zadig select HackRF USB device and just install/replace it with WinUSB driver. - -Note for Windows build: You shall always execute hackrf-tools from Windows command shell and not from Cygwin or MinGW shell because on Cygwin/MinGW Ctrl+C is not managed correctly and especially for hackrf_transfer the Ctrl+C (abort) will not stop correctly and will corrupt the file. - - - -Windows: Installing HackRF Software via Cygwin -++++++++++++++++++++++++++++++++++++++++++++++ - -.. code-block :: sh - - mkdir host/build - cd host/build - cmake ../ -G "Unix Makefiles" -DCMAKE_LEGACY_CYGWIN_WIN32=1 -DLIBUSB_INCLUDE_DIR=/usr/local/include/libusb-1.0/ - make - make install - - - -Windows: Installing HackRF Software via MinGW -+++++++++++++++++++++++++++++++++++++++++++++ - -.. code-block :: sh - - mkdir host/build - cd host/build - cmake ../ -G "MSYS Makefiles" -DLIBUSB_INCLUDE_DIR=/usr/local/include/libusb-1.0/ - make - make install - - - -Windows: Installing HackRF Software via Visual Studio 2015 x64 -++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - -Create library definition for MSVC to link to ``C:\fftw-3.3.5-dll64> lib /machine:x64 /def:libfftw3f-3.def`` - -.. code-block :: sh - - c:\hackrf\host\build> cmake ../ -G "Visual Studio 14 2015 Win64" \ - -DLIBUSB_INCLUDE_DIR=c:\libusb-1.0.21\libusb \ - -DLIBUSB_LIBRARIES=c:\libusb-1.0.21\MS64\dll\lib\libusb-1.0.lib \ - -DTHREADS_PTHREADS_INCLUDE_DIR=c:\pthreads-w32-2-9-1-release\Pre-built.2\include \ - -DTHREADS_PTHREADS_WIN32_LIBRARY=c:\pthreads-w32-2-9-1-release\Pre-built.2\lib\x64\pthreadVC2.lib \ - -DFFTW_INCLUDES=C:\fftw-3.3.5-dll64 \ - -DFFTW_LIBRARIES=C:\fftw-3.3.5-dll64\libfftw3f-3.lib - -CMake will produce a solution file named ``HackRF.sln`` and a series of project files which can be built with msbuild as follows: ``c:\hackrf\host\build> msbuild HackRF.sln``