久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1944|回復: 0
收起左側

mt7688編寫應用程序

[復制鏈接]
ID:463035 發表于 2019-1-6 14:41 | 顯示全部樓層 |閱讀模式
第一章 交叉編譯
需要交叉編譯的原因:
①:由于兩者的運行環境不同,又需要在第一種機器上生成第二種機器運行的代碼。
②:目的平臺不允許我們或不能夠安裝我們所需要的編譯器,而我們又需要這個編譯器的特征
③:目的平臺上的資源貧乏,無法運行我們所需要編譯器
④:目的平臺還沒有建立,連操作系統都沒有,根本談不上運行什么編譯器。
所以對于這種情況我們需要額外的安裝編譯工具。
1.1 直接進行編譯
1.1.1 準備
Ubuntu系統,已經編譯過的固件源碼(里面有編譯工具),C語言源代碼。
1.1.2 編譯步驟
測試程序使用已經寫好的C語言程序hello.c
步驟1:在固件源碼主目錄中找到交叉編譯工具鏈(sudo find -name “*-gcc”),發現工具鏈在
/home/wooya/work/openwrt-hiwooya/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin目錄下。(當然有可能目錄不相同)
步驟2:使用編譯器直接進行編譯
/home/wooya/work/openwrt-hiwooya/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mipsel-linux-gcc -o hello hello.c
當然在編譯的時候可能會出現如下的警告信息
這是因為沒有定義STAGING_DIR這個環境變量。
Key1:使用export臨時增加環境變量,在終端運行下面代碼。(每次開機都需要重新輸入這個命令,所以筆者不建議)
export STAGING_DIR=”/home/wooya/work/openwrt-hiwooya/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin”
Key2:編譯環境變量文件永久性增加環境變量(sudo vim /etc/environment),然后在里面添加環境變量,如下圖所示。
然后重啟或者使用命令刷新這個文件(. /etc/environment或者source /etc/environment)
步驟3:從新進行編譯。
如上圖所示,hello為新編譯出來的程序,當然這個程序不能在這個系統里面執行,因為這程序只能在MT7688里面運行。
1.2 增加環境變量進行編譯
1.2.1 準備
Ubuntu系統,已經編譯過的固件源碼(里面有編譯工具),C語言源代碼。
1.2.2 編譯步驟
步驟1:把命令增加到PATH變量中,有以下幾種方式(選取一種即可)。
Key1:創建一個軟連接到具有PATH路徑的目錄下。
①獲取PATH路徑:echo $PATH(我的環境變量如下)
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
②打印出來的路徑選擇一個然后創建軟鏈接:
ln -s
/home/wooya/work/openwrt-hiwooya/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mipsel-linux-gcc /usr/local/sbin/mipsel-linux-gcc(創建gcc編譯器軟連接,-s為創建軟連接。筆者這里選擇的路徑為:/usr/local/sbin,隨便選取一個即可)
ln -s
/home/wooya/work/openwrt-hiwooya/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin/mipsel-linux-g++ /usr/local/sbin/mipsel-linux-g++(創建g++編譯器的軟連接)
Key2:把編譯器的路徑添加到PATH里面(通過編輯環境變量文件)
①終端輸入命令(sudo vim /etc/environment),打開環境變量文件
②在PATH里面添加編譯器的路徑,如下圖
③刷新這個文件(. /etc/environment或者souce /etc/environment)
Key3:通過修改啟動項增加環境變量(筆者不建議使用此方法,如果設置錯誤會導致很多問題出現)
①打開/etc/profile文件(sudo vim /etc/profile)
②文件末尾添加下面的命令
export PATH="$PATH:/home/wooya/work/openwrt-hiwooya/staging_dir/toolchain-mipsel_24kec+dsp_gcc-4.8-linaro_uClibc-0.9.33.2/bin"
③刷新這個文件(souce /etc/profile或者. /etc/profile)
步驟2:輸入命令(mipsel-openwrt-linux-gcc hello.c -o hello)直接進行編譯,可以看到編譯是成功的。
1.3 使用Makefile進行編譯
1.2.1 準備
Ubuntu系統,已經編譯過的固件源碼(里面有編譯工具),C語言源代碼,Makefile文件。
1.2.2 編譯步驟
步驟1:寫一個Makefile文件,如下圖所示。
步驟2:輸入命令(make)進行編譯
如上圖所示,已經編譯成功。
第二章 上傳到板子運行
2.1 使用功能定制
2.1.1 準備
MT7688板子,串口線,電源線。
openwrt源碼,FileZilla軟件,SecureCRT軟件。
2.1.2 執行步驟
步驟1:把編譯好的文件放在固件主目錄下的files文件下,或者在里面創建一個文件夾用于存放應用程序。筆者創建了一個soft文件夾,如下圖。
步驟2:重新編譯固件,然后把固件燒寫到MT7688板子上。
步驟3:在終端運行這個應用進行測試。
如圖所示,在終端能夠成功執行這個程序。
2.2 使用FileZilla上傳
2.2.1 準備
FileZilla軟件,SecureCRT軟件。
MT7688板子(支持ssh協議),串口線,電源線。
注:如果固件不支持ssh,詳見2.3章節安裝ssh。
2.2.2 進行上傳
步驟1:使用SecureCRT軟件登錄板子。
步驟2:執行命令(ssh),查看是否支持ssh協議,若不支持,詳見2.3章節安裝ssh。
如上圖所示,表示支持ssh。如果出現not found表示不支持ssh,需要對源碼重新配置,詳見2.3章節安裝ssh。
步驟3:對板子上的用戶設置密碼。(如果已經設置請忽略)
執行命令(passwd)修改密碼,然后輸入兩次設置的密碼,確定即可。
注:輸入密碼時,密碼在終端不會顯示。
步驟4:重啟板子,并查看主機ip地址。(需要與電腦的ip地址在同一網段,并且能夠ping通,不然無法連接,如圖所示,筆者的網絡是通的)
主機ip地址
板子ip地址
步驟5:打開FileZilla軟件,輸入主機(192.168.31.111),用戶名(root),密碼(123456)端口號(22),然后點擊快速連接。(以上為筆者的設置的ip和密碼,具體設置可能有所不同)
步驟6:把程序上傳到板子上。
如上圖所示,筆者的程序能在板子上執行。
2.3 固件安裝ssh協議
2.2.1 準備
FileZilla軟件,SecureCRT軟件,固件源代碼。
MT7688板子,串口線,電源線。
2.2.2 安裝
步驟1:進入源碼主目錄,執行源碼配置(sudo make menuconfig),增加如下的配置信息,
如果沒有ssh這個選項則需要更新固件源碼,詳見步驟2--5,如果存在則跳過步驟2--5。
Network --->
SSH --->
<*>openssh-server
<*>openssh-sftp-server
步驟2:在源代碼主目錄下執行命令(make distclean),會對已經編譯好的代碼清除。
步驟3:執行命令(./scripts/feeds update -a),跟新源代碼程序
步驟4:執行命令(./scripts/feeds install -a),對源代碼進行重新加載
步驟5:重新配置源代碼(sudo make menuconfig),由于重新獲取了代碼,所以所有的配置都需要重新配置。
步驟6:編譯固件,寫進板子里面。
步驟7:輸入命令(ssh)查看是否成功配置ssh。
如上圖所示,筆者的固件已經成功安裝了ssh
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美精品1区2区 | 999久久久 | 国产精品美女久久久久久免费 | 国产乱码精品一品二品 | 羞羞视频在线观免费观看 | 日韩在线视频网址 | 久久精品亚洲 | 久久视频免费看 | 日韩色视频 | 日本一区二区三区在线观看 | 自拍视频网站 | 97在线观看 | 久久婷婷国产香蕉 | 亚洲国产中文在线 | 天天干天天操天天看 | 国产视频在线观看一区二区三区 | 精品91av| 欧美一区二区 | 午夜精品一区二区三区免费视频 | 亚洲精品国产精品国自产在线 | 一区二区三区视频在线免费观看 | 天天操夜夜操 | 亚洲国产精品区 | 久久久久久久久久久久久9999 | 啪啪精品| 中文字幕精品一区 | 国产欧美精品区一区二区三区 | 日韩久久久久 | 伊人中文网 | 91在线观看免费视频 | 成人日b视频 | 精品少妇v888av| 97av视频| 日韩欧美精品一区 | 久久在视频 | 日韩中文视频 | 麻豆国产一区二区三区四区 | 久久国产精品视频 | 亚洲视频精品在线 | 中文字幕国产 | 欧美专区在线观看 |