openwrt編譯及第一個安裝包教程
Date: 2017.03.14
Made:SuperDeverloper
Email: [email protected]
Target: For mt7688 based board
說明:本人在學習過程中走了不少彎路,希望本文件能為後來者提供便利。歡迎複製和使用本文件。本文件記錄了搭建openwrt編譯環境以及快速建立ipk包(openwrt上的安裝程式)。本文件在實際應用中做過幾次修改,以幫助使用者正確編譯。
1.安裝ubuntu16.04
Ubuntu常用命令:
設定ROOT許可權:
$ sudo passwd root
開啟SSH服務:
$ sudo apt-get install openssh-server
$ service ssh start
$ ps–e|grep ssh //檢視SSH服務是否開啟,注意保持聯網
安裝應用程式:
$ sudo apt-get install ****
2.安裝依賴包
apt-get install g++
apt-get install libncurses5-dev
apt-get install zlib1g-dev
apt-get install bison
apt-get install flex
apt-get install unzip
apt-get install autoconf
apt-get install gawk
apt-get install git
apt-get install make
apt-get install gettext
apt-get install gcc
apt-get install binutils
apt-get install patch
apt-get install bzip2
apt-get install libz-dev
apt-get install subversion
以上軟體安裝完成,編譯報錯時安裝以下檔案
apt-get install libssl-dev
$tar jvxf ** //如果你的開發板提供了SDK,在SDK目錄下會有這個工具包,在SDK/STAGING_DIR目錄下
至此開發環境搭建完成!!
3.編譯openwrt
cd到openwrt根目錄下
cd /superwen/work/openwrt
執行
$ sudo make menuconfig
選擇目標平臺
Target System :RT288X/RT3xxx
Subtarget : MT7688 based boards
Target Profile: LinkIt7688
在這裡選擇自己對應的平臺就可以了
選擇Exit退出,選YES儲存配置
重點:
在openwrt根目錄下執行
$sudo make dirclean //不執行這一步會報錯
在openwrt根目錄下執行
make V=99 //第一次大概2-4小時能編譯完成,之後再編譯就快了
編譯完成後在bin目錄下生成相應檔案,可燒寫到板子上,燒寫方法各自的板子自帶教程,這裡就不詳細說明了
4.獲取屬於自己開發板的SDK包
在openwrt目錄下執行
make menuconfig
按空格鍵選擇
Build the Openwrt SDK
Package the Openwrt-based Toolchain
Advanced configuration options(for developers)
-> Toolchain Options
->Build gdb //需要用空格鍵先選擇上再回車進入下一級選單,否則開啟選項是空的
儲存並退出 執行make V=99
在bin目錄下生成對應的OPENWRT-SDK檔案,將此檔案解壓獲得對應資料夾
複製資料夾到非openwrt目錄更名為openwrt-sdk,cd進入此資料夾,執行make V=99 若編譯無錯誤,說明獲取openwrt sdk成功
5.第一個openwrt上的應用程式hello
在openwrt/package/utils/目錄下任一複製一份資料夾到OPENWRT-SDK/package,以usbreset為例,該資料夾下結構簡單,包含一個src資料夾和一份Makefile,src資料夾下有一份usbreset.c檔案
i. 修改usbreset.c的檔名文hello.c
ii. 修改usbreset.c的檔案內容
刪除該檔案所有內容並輸入如下程式碼
#include<stdio.h>
int main(void){
printf(“Hello opwrt!!”);
return 0;
}
儲存並退出
iii. 修改Makefile檔案
開啟該檔案,將所有usbreset字元全部替換為hello,
替換後的Makefile
其餘地方不要做任何改動,儲存並退出
在openwrt-sdk根目錄下執行
make menuconfig
在Utilities->中找到hello,並按空格鍵將hello前面標記成M
在openwrt-sdk/bin/base目錄下生成hello***.ipk檔案 //如果你複製的不是USBRESET檔案,生成的檔案所在路徑可能不一樣,但是都在bin目錄下
6.上傳ipk檔案
在openwrt-sdk/bin/base 目錄下執行
$ sudo scp hello***.ipk root@192.168.1.1: //OPWRT 的IP地址,別忘記冒號
輸入密碼後上傳完成
切換到openwrt操作
此openwrt接收到的檔案儲存在root/目錄下
# opkg install hello***.ipk
安裝完成後輸入
hello
Openwrt在串列埠上輸出Hello opwrt!!
以後要編寫自己的程式就可以以此為模板進行編寫,但是這個方法只能編寫一個C檔案的工程,要編寫更大的工程需要深入學習下Makefile.當然,能找到合適的模板來改也是非常便捷的方式
本教程Over!!
相關推薦
openwrt編譯及第一個安裝包教程
Date: 2017.03.14 Made:SuperDeverloper Email: [email protected] Target: For mt7688 based board 說明:本人在學習過程中走了不少彎路,希望本文件能為後來者
Openwrt新增定製一個軟體包
我深知前路風雨,但我依然微笑前行 ;) Openwrt的Makefile流程異於一般常用的Makefile,閱讀起來難度太大。但是我麼可以先通過如何使用、修改Makefile開始,從Makefile的某個區域性開始瞭解,事情就會變得簡單許多。我們在開發
在win10裡從原始碼編譯nodejs的安裝包和學習原始碼
大家其實都是從網站上下載直接安裝檔案的,為什麼還要從原始碼安裝呢?可能原因就兩個,一個想自己優化,新增一個特定的東西;另一個想學習nodejs的實現,知道為什麼這樣實現的。我這裡主要為學習nodejs的實現,所以要到下面的網站下載原始碼:https://nodejs.org/
使用NDK和Cygwin編譯第一個so包
本文主內容: 1、 Android NDK 安裝 2、 安裝Cygwin與使用NDK編譯 3、 在Eclipse中整合C/C++開發環境CDT 4、 安裝Sequoyah外掛 5、 JNI編譯環境配置 本文建立在已經完成Android開發環境搭建的基礎上。其基礎環境至少需要包含以下
python讀取nc檔案(上)安裝包教程
Python是非常強大的工具,雖然在氣象領域應用還不普遍,但是隨著時代發展,Python的應用前途是光明的。Python豐富的模組(module)讓其可以做的事情非常多,包括處理各種格式的資料,其中就包括nc/HDF4/HDF5格式的資料。 安裝Anaconda 首先需要
ESP8266-SDK編譯環境安裝包的安裝、編譯與燒錄教程【windows】
SDK編譯環境安裝包的安裝、編譯與燒錄教程 【支援最新版AT、IOT及LUA原始碼編譯,附原始碼】 1、安裝包Fans_ESP8266_SDK_Make.exe 下載地址:http://pan.baidu.com/s/1pJ6w1tD 安裝後在C盤下生成三個資料夾
CentOS7/64位環境安裝Mysql 5.7.19二進制包教程
char group 教程 設置 路徑 datadir init alt mysq 1.下載mysql 在官網:http://dev.mysql.com/downloads/mysql/ 中,選擇二進制的mysql版本下載: #wget http://dev.mys
vs2008安裝包及安裝教程
run 可見 資源 進入 打開 post 找不到 com 安裝教程 註:本博客為原創博客,允許轉載,轉載時請註明出處 1.下載vs2008安裝包,找不到資源的請戳這裏:鏈接:https://pan.baidu.com/s/1dGIaPrj 密碼:25dq 2.打開安裝
Andriod項目實戰——如何在微信H5棋牌鬥牛房卡源碼平臺租售搭建中的一個包下建新包教程
明顯 技術分享 col log 兩張 需要 容易 網址 roc 最開始是想將各個類分門別類地微信H5棋牌鬥牛房卡源碼平臺租售搭網址:h5.fanshubbs.com聯系Q1687054422存放在不同的包中,所以想在項目源碼包中新建幾個不同功能的包eg:utils、mode
QEMU修改及安裝包編譯
payload tail clock nss rac vra vmdk 復制 完整 轉載自 靈躍雲 :原文鏈接 1. 前言 上一篇文章《虛擬化環境搭建及虛擬機創建》中,我們簡單介紹了虛擬化環境的搭建和虛擬機創建過程,本文
Hadoop自己編譯Hadoop安裝包
span per blog code 文件中 centos apps 是我 bootstrap CentOS-6.7 編譯 hadoop-2.6.5 (只需輸入紅色命令即可) 目錄 1、閱讀編譯文檔 .....................................
解決rpm安裝包依賴問題的一個方法
linux yum rpm依賴 需求背景 你需要安裝幾個rpm包,當時當你執行rpm -ivh *.rpm的時候,卻提示需要一大堆依賴。 你被不允許配置yum源,你也不能一個一個去嘗試包和包之間的依賴關系。 解決方法 先在通互聯網的機器上配置互聯網yum源 再安裝#yum -y ins
兮米安裝包制作工具圖文教程集錦電子書
電子書 兮米安裝包制作工具是俺用過最好用的軟件打包工具,操作簡單,功能強大~ 點擊壓縮包文件裏的index.htm 打開電子書。 https://pan.baidu.com/s/1mnOd7lbD_QqbycZ4H3WgCw兮米安裝包制作工具圖文教程集錦電子書
第一個pip安裝包程序制作實驗
module 版本 git con 界面 emd htm exp https 第一個pip安裝包程序實驗 經常在使用Python項目和編程中,會經常使用到pip install 包名 或者使用 easy_install 包名進行有關依賴程序包安裝操作。 通過查看相對應的指
eclipse反編譯插件jadClipse安裝使用教程
stand 例子 按鈕 load 技術 clas ads associate 以及 https://jingyan.baidu.com/article/3f16e003c857082590c1036f.html previously:最近在學習Dependency Inje
3dmax多個版本軟件的安裝包以及安裝教程
col 教程 記不得 3dsmax clas baidu ctp spa 鏈接 這個文檔具體出自哪裏,我也是記不得了,需要的看下,鏈接如果是失效,那我也無能為力了。 免費分享,鏈接永久有效 2014版3D MAX鏈接:http://pan.baidu.com/s/1nu
yum 安裝 一個小問題導致找不到安裝包
mirror mir 回來 ava 安裝 卸載 ble update .repo 業務需求安裝一個免費的ssl毫不猶豫想到了Let's Encrypt,於是yum 安裝,但是這臺機器上面遇到了怪事,沒有可用的安裝包,於是換了幾次阿裏,163,sohu源,換過
手工編譯安裝Apache, 版本httpd-2.4.29(免費提供安裝包,懶人福利;提供安裝腳本)
echo -e abd sel local 使用 ado .tar.gz c++ height 環境部署:本次實驗以redhat6.5系統為安裝對象,(CentOS其他系列也可以)安裝Apache源碼包 httpd-2.4.29.tar.bz2依賴包 pcre-8.41.t
hadoop快速入門教程:hadoop安裝包下載與監控參數說明
分布式 height tex region 集群 RoCE 發行版 store serve 前階段用了差不多兩周的時間把DKhadoop的運行環境搭建以及安裝的各個操作都介紹了一遍。關於DKhadoop安裝包下載也只是順帶說了一下,但好像大快搜索的服務器在更新,新的下載頁面
Linux初識----歷史、安裝、及第一個"helloworld"程序運行
計算 安裝gcc 重要 操作 計算機 快捷鍵 版權 編輯模式 很多 一、Linux歷史 早在Linux出現之前的20年(大約在20世紀70年代),就有一個相當穩定並且成熟的操作系統存在。那就是UNIX。 (1)1969年,Thompson經過四個星期的奮鬥,他最終以