openwrt 安裝交叉編譯工具鏈 錯誤總結

Openwrt交叉編譯

      首先我先介紹下什麼是交叉編譯:

      交叉編譯,簡單的說就是,就是在一個平臺上生成另一個平臺上的可執行文件,舉個例子,我我用我的電腦(x86_64平臺)編譯出路由器(mips-AR71XX)上可以執行的二進制文件,要進行交叉編譯首先就要有對應平臺的編譯器。

Openwrt的交叉編譯並不複雜。

第一步,你需要得到toolchain(工具鏈),我個人理解這個就相當於編譯器

       如何得到toolchian呢?有兩種方法(推薦第一種)

1.到openwrt下載(要注意平臺,http://downloads.openwrt.org)

2.自己編譯,在編譯固件時可以看到有編譯toolchain的選項


      這裏告訴大家一個非常實用的小技巧,如果用手工敲上面的命令,非常的費時費力,還很容易出錯,你可以敲完“sudo tar jxvf ./b”後按“Tab”鍵,系統將自動補全爲“sudo tar jxvf ./bin” ,後面的文件夾和文件也是同理,非常的省時省力。

 

安裝ToolChain

     步驟1:打開虛擬機,在 /home下創建 /home/opwnWRT 文件夾【注意需要用sudo才能創建】    

    步驟2:先將opwnWRT安裝包 xxxxxx.tar.bz2從Windows中弄到ubuntu中去(此處使用共享文件夾)

    步驟3:複製。在ubuntu中進入到 /home/opwnWRT 所在的目錄(用命令和窗口都行)

    步驟4:解壓,用命令和窗口都行。解壓指令如下:tar  -jxvf  xxxxx.tar.bz2  。按回車鍵後讓ubnutu自動安裝直到安裝完畢。

修改ToolChain 的 PATH路徑

      在一個終端中執行  . mips-openwrt-linux-gcc  -v  命令後,該終端中就可以直接使用mips-openwrt-linux-gcc 了,但是隻要關掉這個終端再另外打開一個立馬就不行了。原因是我們本次終端中執行時的操作只是針對本終端,以後再打開的終端並未被執行過這個命令所以沒導出。
    解決方案:如果要每次打開終端都可以看到這個環境變量,在  /etc/bash.bashrc  中

   (1)sudo vi /etc/bash.bashrc
         在最後一行添加

        export  PATH=/home/opwnWRT/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/bin:$PATH
        export STAGING_DIR=/your_openwrt_path/staging_dir:$PATH
 注意:

(1)上面這個“STAGING_DIR”變量中的“your_openwrt_path”是讀者實際放 openwrt源碼的根目錄,如果這個“STAGING_DIR”變量不設置的話,會在用交叉工具鏈編譯文件時有警告,但是不影響編譯結果。

(2)末尾的  :$PATH 不要弄錯,否則系統的變量會出錯,連 ls、copy等命令都操作不了。

(2)末尾的  :$PATH 不要弄錯,否則系統的變量會出錯,連 ls、copy等命令都操作不了。

(2)末尾的  :$PATH 不要弄錯,否則系統的變量會出錯,連 ls、copy等命令都操作不了。

重要事情說了3遍!!!


最後保存退出。


接着在終端執行以下命令:
        source  /etc/bash.bashrc
建議重啓一下ubuntu,否則可能找不到。


檢查是否安裝成功
    mips-openwrt-linux-gcc  -v
   此時應打印出交叉編譯工具的一些信息,表示安裝成功
 

白浪介紹:

(1)一位自媒體極客,面向射頻、微波、天線、無線通信、智能硬件、軟件編程、滲透安全、人工智能、區塊鏈,Java、Android、C/C++、python等方向的綜合能力培養提升。

(2)各種學習資料、學習軟件分享(僅供學生學習)。

1.掃碼關注公衆號(Geekxiaobai)

                                           

2. 在後臺發送“Python高級編程”“CST”或“HFSS” 或“Altium”等,即可免費獲得學習資源。僅供學習之用。

3. 掃碼關注後,查看往期內容,會有更多資料驚喜等着你來拿哦  

  想要更多相關學習資料,可以在公衆號後面留言哦,後期將會根據留言需求免費分享學習資料哦。

========******=========******========******=========******==========

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章