在Ubuntu上安裝GNU radio


  首先,我不得不說在Ubuntu上面安裝GNU radio,對於初學者來說還真不是一件簡單的事情。本人從最開始的一點點都不懂到最后熟悉、了解,成功安裝GNU radio整整花了大概3天的時間。現在把自己在這個過程中學到的東西分享給大家,希望對大家有幫助。

  安裝GNU radio一般有兩種方法:1. 通過腳本文件自動安裝;2. 自己下載相應的版本文件,自行編譯安裝。第一種方法屬於自動安裝,不能讓我們具體了解安裝的過程,不利於以后的學習。而且這種方法往往也不容易成功,需要等待很久的時間,受到很多因素的影響。我自己也試過這種方法,很難成功。因此,我在這里不推薦。我將會在下面具體介紹第二種方法。

  補充一句,關於Ubuntu系統的安裝大家可以參考我的上一篇隨筆 “在Windows系統上安裝Ubuntu” ,里面的內容比較詳細。

  還有就是根據你的Ubuntu系統版本選擇合適的GNU radio版本安裝也是非常的重要的,GNU radio的不同版本的下載鏈接 為: http://gnuradio.org/redmine/projects/gnuradio/files 。我安裝的系統為Ubuntu12.04 LTS,最開始按照網上許多的教程推薦下載的GNU radio版本都是GNU radio-3.4.2.tar.gz。結果一直安裝不成功,具體在哪一步報錯,我將會在下面的安裝步驟中說明。后來我更換了GNU radio的版本為3.5.1,按照同樣的方法結果成功安裝。

  1. 首先需要配置你的系統的安裝環境。方法很簡單,只需要打開終端,輸入一段和你的系統相對應的一段代碼就可以了。具體代碼可以參考:http://gnuradio.org/redmine/projects/gnuradio/wiki/UbuntuInstall 。例如,我安裝的是Ubuntu 12.04,所以我的代碼為:
    sudo apt-get -y install git-core autoconf automake  libtool g++ python-dev swig \
    pkg-config libboost1.48-all-dev libfftw3-dev libcppunit-dev libgsl0-dev \
    libusb-dev sdcc libsdl1.2-dev python-wxgtk2.8 python-numpy \
    python-cheetah python-lxml doxygen python-qt4 python-qwt5-qt4 libxi-dev \
    libqt4-opengl-dev libqwt5-qt4-dev libfontconfig1-dev libxrender-dev                                                                                                                                                                                                                                   (上面的過程如果是第一次進行的話,會花費很長的時間,請耐心等待。有些時候由於網速原因,一些組件無法一次性安裝成功,需要根據提示,進一步安裝!)
  2. 安裝GNU radio建議首先安裝UHD驅動,否則,在接下來的安裝過中會報錯。參考網址為: http://ettus-apps.sourcerepo.com/redmine/ettus/projects/uhd/wiki/UHD_Linux   。我的步驟是:先在終端輸入
    sudo apt-get install python libboost-all-dev libusb-1.0-0-dev                                                                                      然后在終端輸入:
    sudo bash -c 'echo "deb http://files.ettus.com/binaries/uhd_stable/repo/uhd/ubuntu/`lsb_release -cs` `lsb_release -cs` main" > /etc/apt/sources.list.d/ettus.list'
    sudo apt-get update
    sudo apt-get install -t `lsb_release -cs` uhd                                                                                                      (一般在第一段代碼輸入后,終端會自動運行,但是常常會報錯。例如會出現:

    libboost-all-dev : 依賴: libboost-dev 但是它將不會被安裝
    依賴: libboost-date-time-dev 但是它將不會被安裝

    依賴: libboost-filesystem-dev 但是它將不會被安裝
    依賴: libboost-graph-dev 但是它將不會被安裝
    …………………………………………………………
    …………………………………………………………

    此時,需要根據具體的提示在終端輸入sudo apt-get install libboost-dev,
    sudo apt-get install libboost-date-time-dev,......把提示沒有安裝的全部安裝,即可。這一步有的時候要安裝十幾個組件,需要大家耐心操作。)
  3. 把下載好的GNU radio源代碼手動解壓到主文件夾,打開終端(快捷鍵為Ctrl+Alt+T),進入主文件夾的你剛剛解壓的GNU radio目錄中,例如我就是進入gnuradio-3.5.1目錄里面。依次執行:   ./configure   ,   make   ,   make check   ,   sudo make install   命令。正常情況下,在./configure命令完成后會出現gcell、gr-gcell、gr-shd、gr-comedi等錯誤。錯誤當然是越少越好了,如果第二部沒有順利完成的話,還會出現gr-uhd的錯誤。一般的,gr-shd的錯誤可以忽略,gcell、gr-gcell有的時候會出現,有的時候不會出現,也可以忽略,一般不影響接下來的安裝。對於gr-comedi的錯誤,可以通過在終端輸入:sudo apt-get install libcomedi0 libcomedi-dev來解決。網上有很多資料上說是輸入sudo apt-get install libcomedi0,我驗證下來,這種方式不能成功。
  4. make這一步也可能會有報錯。我當時就一直報錯,在網上找了很多很多的方法,都不能解決,最后把自己下載的GNU radio版本從3.4.2換成了3.5.1,重新嘗試后,成功安裝。這也就是我在最開始說選擇正確的版本是如此重要的原因。
  5. 上面的命令輸完后,如果一切順利,可以在終端輸入gnuradio-companion測試是否成功安裝。一般會直接跳出GNU radio的操作窗口,證明你已經成功安裝。有的時候也會跳出對話框:“Cannot import gnuradio. Are your PYTHONPATH and LD_LIBRARY_PATH set correctly?”,你可以執行如下命令:

    export PATH=$PATH:/usr/local/bin

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

    export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

    export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.6/site-packages                                                                                                       然后執行gnuradio-companion出現窗口,安裝成功。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM