Quantcast
Channel: LinE's Blog
Viewing all articles
Browse latest Browse all 25

在Debian下搭建HackRF环境

$
0
0

今天,新买的HackRF到手了,新货到收当然是立刻要把玩一下,遂在此记录下搭建使用HackRF环境的过程,以便于自己以后查阅,也可以给需要的人查询

预先准备

我这里宿主机操作系统为Mac OS X EI Capitan,虚拟机软件使用的是Parallels Desktop 11,虚拟机配置为2 Core/2G RAM/64G HDD
使用的操作系统版本为debian-8.4.0-amd64,带有XFCE桌面图形环境,使用的是阿里云的软件源
具体的系统安装过程不再赘述
相关链接:
GNU Radio
https://github.com/gnuradio/gnuradio
GNU Radio VOLK Module
https://github.com/gnuradio/volk
HackRF 固件/驱动/其他程序
https://github.com/mossmann/hackrf
gr-osmosdr
https://github.com/osmocom/gr-osmosdr
gqrx 图形化工具
https://github.com/csete/gqrx
rtl-sdr 电视棒相关
https://github.com/osmocom/rtl-sdr

首先是更新源

apt-get update
apt-get upgrade

然后需要安装编译环境以及所需的依赖包,因为是编译安装,所以可能安装过程会比较慢,需要耐心等待^_^

apt-get -y install git build-essential cmake git-core autoconf automake libtool g++ python-dev swig pkg-config libfftw3-dev libboost1.55-all-dev  libcppunit-dev libgsl0-dev libusb-dev sdcc libsdl1.2-dev python-wxgtk3.0 python-numpy python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev libusb-1.0

建立工作文件夹,如下文不特别指明,则提到的工作文件夹均为/root/hackrf/install

mkdir -p /root/hackrf/install
cd /root/hackrf/install

然后从git源去拉取最新代码

# gnuradio
git clone https://github.com/gnuradio/gnuradio

# gnuradio-volk-module
git clone https://github.com/gnuradio/volk

# hackrf
git clone https://github.com/mossmann/hackrf

# gr-osmosdr
git clone https://github.com/osmocom/gr-osmosdr

# gqrx
git clone https://github.com/csete/gqrx

# rtl-sdr
git clone https://github.com/osmocom/rtl-sdr

全部拉取完的文件夹列表应如下图


正式安装

准备几个包,分别为gnuradiovolkhackrfgr-osmosdrgqrx,如果需要使用电视棒,需要安装rtl-sdr
首先需要把volk模块放置到gnuradio中,不然cmake会提示volk子模块未找到,然后cmake会终止

cp -rf volk/ gnuradio/volk/

编译安装 gnuradio

首先进入工作目录,然后进行环境检查

cd /root/hackrf/install
cd gnuradio
mkdir build
cmake ../

检查完成之后的提示应该如下图


然后进行编译
make -j4 #4代表用4核编译,具体请根据自己的计算机配置调节

在漫长的等待之后(我这里大概等了一个多小时),提示编译成功,如图


然后进行安装,安装过程几分钟就完了
make install
ldconfig


至此GNU Radio安装完成

编译安装 hackrf

首先进入工作目录,然后进行环境检查

cd /root/hackrf/install
cd hackrf/host
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON

检查完成之后的提示应该如下图


然后进行编译
make

依然是等待,不过这个比较快,不到一分钟就完了,完成结果如图


然后是安装
make install
ldconfig

安装也是比较快,安装完成如图


至此hackrf相关已经安装完成

编译安装 gr-osmosdr

首先进入工作目录,然后进行环境检查

cd /root/hackrf/install
cd gr-osmosdr
mkdir build
cd build
cmake ../

检查完成之后的提示应该如下图


然后进行编译,编译过程大概几分钟
make


然后是安装
make install
ldconfig

安装比较快,安装完成如图


至此 gr-osmosdr 相关已经安装完成

编译安装 gqrx

首先要安装几个依赖,其中libgl1-mesa-dev libgl1-mesa-glx这两个包要重新安装一次
重新安装是因为Debian的xfce图形化桌面默认已经安装了,但是在/usr/lib/x86_64-linux-gnu这个目录中的libGL.so文件软连接指向的libGL.so.1.2.0这个文件并不存在,重装这两个包之后就会自动生成了

# 安装QT的依赖库
apt-get install qtbase5-dev libqt5svg5-dev
# 重装OpenGL的依赖
apt-get --reinstall install libgl1-mesa-dev libgl1-mesa-glx

开始进行编译检查

cd /root/hackrf/install
cd gqrx/
mkdir build
cd build
cmake ../


然后进行编译,编译过程大概几分钟
make


然后是安装
make install
ldconfig


创建桌面快捷方式
cd /root/hackrf/install/gqrx/
cp gqrx.desktop ~/桌面
# 有些系统的桌面文件夹是英文的,将桌面换成Desktop即可
chmod +x ~/桌面/gqrx.desktop

至此,gqrx就安装完成了

编译安装 rtl-sdr

cd gnuradio
mkdir build
cmake ../ -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON


然后进行编译,编译过程不到1分钟就完了
make


然后是安装
make install
ldconfig


至此,rtl-sdr就安装完成了

验证安装

首先插上HackRF,打开终端,执行如下命令

hackrf_info

如果系统发现了HackRF,返回应当如下图

双击执行桌面的gqrx,即可打开gqrx的GUI图形化界面,
点击工具栏那个像是PCI-E卡的图标,出现设备选项,设备选择HackRF One,其余保持默认,然后打开开关,即可开始捕获当前的信号,如图所示

听个FM~

Viewing all articles
Browse latest Browse all 25

Trending Articles