我的Mac可以支持HackRF么?

Mac OS X,之所以成为Mac,全靠底层的Unix系统。因此,她有与Linux非常类似的操作过程,却又有其独特的地方。

系统的相似性使得Linux下面的代码可以直接在Mac下使用(只是要重新编译),因此在Mac里面搭建全套的HackRF环境是完全可能的,而且是非常方便的。

编程环境搭建

Mac下面的编程环境包括如下程序,需要按顺序安装

1. 安装XCode:

直接从AppStore安装就好了~

2. 安装XQuartz/X11:

XQuartz是一个在Mac OS X下支持X窗口系统的开源软件,许多开源程序都是依靠XQuartz实现图形界面的。安装方法也很简单,下载链接中的dmg文件,然后双击打开即可安装。

3. 安装MacPorts

MacPorts的安装可以参考

  1. Macports 网站指南:http://www.macports.org/install.php
  2. 开源中国社区的指南(中文):http://www.oschina.net/question/129318_17613

推荐的安装方法是:下载dmg或pkg包文件,然后按照提示安装。如果需要自行编译或采用其他安装方法,可以参考MacPorts的网站(英文)。

安装好后,打开”实用工具“里的”终端“,然后键入如下命令来确保MacPorts是最新的(此命令也可不定期运行):

有同学说“这个已经不是在mac的终端里面运行了,需要在XQuartz里面运行”

sudo port -v selfupdate

软件无线电环境搭建

安装HackRF最重要的是软件无线电环境的搭建,需要用到的程序包括:

gnuradio、hackrf、rtl-sdr(可选)、gr-osmosdr、gqrx(可选)

 与Linux下不太相同,采用MacPorts安装,可自动下载相关的依赖程序,而不需输入长长的依赖包。可相应的运行下列脚本,安装所需程序:

sudo port install gnuradio
sudo port install hackrf
sudo port install rtl-sdr
sudo port install gr-osmosdr
sudo port install gqrx

安装之后,可定期运行下列脚本,查看哪些安装程序已经过时:

sudo port outdated

然后可以用下列脚本来升级程序

sudo port upgrade outdated

如果需要卸载某个程序,可以用如下脚本

sudo port uninstall NAME

关于GNURadio的安装问题

有爱好者表示,在Mac OS X 10.9上安装gnuradio不能成功,此问题在这里有很多讨论,有建议称可以安装gnuradio的开发版以解决安装失败的问题:

 sudo port install gnuradio-devel

不过要有心理准备,全新安装耗时非常久,如果网络不够快的话,建议将这一安装放在半夜进行,一觉醒来,可能万事大吉了~