USRP作為軟件無線電系統中常用的射頻設備,其驅動UHD的安裝及穩定運行,是SDR系統穩定的必備條件,該篇博客總結UHD的相關安裝方法,主要有三種,分別是apt-get、github clone源碼編譯以及官網下載源碼編碼。下面對三種方法進行簡單介紹,系統為Ubuntu14.04,其他系統過程基本類似。
apt-get install UHD
Ubuntu系統中,通過apt-get來進行軟件的安裝,無非是一種快速簡單的方法,但是對於UHD的安裝,通過以下apt-get install uhd命令進行安裝,其UHD的版本無法確定,從而導致一些開源的項目無法使用UHD或者不穩定,因此不建議使用apt-get install來直接安裝UHD。
當然,如果SDR項目對UHD的版本支持很低的話,可以使用以下命令來進行安裝:
sudo add-apt-repositoryppa:ettusresearch/uhd sudo apt-get update sudo apt-get install libuhd-dev libuhd003 uhd-host
在國內,可能因為需要FQ的緣故,添加源之后,無法訪問到最新的UHD版本,因此還是推薦使用后兩種方法。
Github clone源碼編譯
githubclone源碼編譯,即從uhd的github上clone源代碼,並切換到穩定版本,之后記性源碼編譯安裝,下面詳細介紹該過程。
(a)git 代碼
git clone https://github.com/EttusResearch/uhd cd uhd git checkout release_003_010_000_000 // 這里安裝的是版本,對於一些系統需要安裝的版本不同,這里安裝的是3.10.0.0,根據我的經驗,3.10.0.0以及3.10.0.2對於OAI、srsLTE、Amarisoft來說,比較穩定。
(b)安裝依賴
sudo apt-get install libboost-all-dev libusb-1.0-0-dev python-cheetah doxygen python-docutils g++ cmake python-setuptools python-mako
如果在安裝的過程中,出現無法安裝的包,可以采用其他軟件管理工具進行安裝,如easyinstall、aptitude等。
(c)編譯
cd uhd/host/ mkdir build cd build cmake ../ make -j8 //由於編譯比較慢,所以選擇使用8個”處理器”來提速 make test sudo make install sudo ldconfig //更新動態鏈接庫
(d)鏡像下載
sudo uhd_images_downloader //有時候會很慢,也可以通過手動下載對應版本的鏡像,然后放到對應位置即可。
(e)測試:如果以上步驟均完成,則可以將usrp插入電腦,進行測試
//查找設備 sudo uhd_find_devices //查看設備信息 sudo uhd_usrp_probe
(f)ROOT權限
按照以上安裝步驟完成之后,使用的時候,必須sudo才能執行UHD的命令,因此,可以通過設置ROOT權限直接執行UHD命令。
cd /usr/local/lib/uhd/utils sudo cp uhd-usrp.rules /etc/udev/rules.d/ sudo udevadm control --reload-rules sudo udevadm trigger
注意:當
cd /usr/local/lib/uhd/utils
提示沒有這個文件或目錄時,查看自己的文件放在哪個目錄下面了,改成相應的即可。


官網源碼編譯
官網下載源碼進行編譯,即從Ettus官網下載對應的UHD版本以及鏡像,然后如上面的步驟進行編譯即可。
下載UHD鏈接為http://files.ettus.com/binaries/uhd_stable/,從里面選擇對應的版本即可,下載鏡像鏈接為http://files.ettus.com/binaries/images/,一定要讓鏡像與UHD的版本對應,否則可能出問題。
需要注意的是通過手動下載鏡像后,首先需要將鏡像解壓,然后拷貝到對應的目錄之下,命令如下所示:
sudo mkdir /usr/local/share/uhd
sudo cp –r uhd-images_003_010_000_000-release/share/uhd/images/usr/local/share/uhd
原文鏈接:https://blog.csdn.net/jipengwang/article/details/79451729