1 基礎(chǔ)知識(shí)
env 工具和 源碼 所處的目錄都不能有中文或空格請(qǐng)先檢查!!
code 是一個(gè)命令 點(diǎn) ‘.’ 是一個(gè)參數(shù)表示當(dāng)前目錄,中間有一個(gè)空格。
romfs ramfs 文件系統(tǒng)中的文件名和c的變量的命名一樣,只能由英文字母開(kāi)頭且僅包含數(shù)字和下劃線。
修改 qemu.bat 里面的參數(shù)時(shí),要注意那是一行參數(shù)中間沒(méi)有空格(復(fù)制粘貼完要注意)。其中ifname=tap 的意思就是虛擬TAP網(wǎng)卡的名字重命名為了 tap.
終端顯示 ?[m?[ 亂碼
圖中的 ?[m?[ 是終端字體顏色的代碼,顯示出來(lái)是因?yàn)榻K端不支持顏色顯示。
添加環(huán)境變量方法
首先請(qǐng)確認(rèn)下面紅框里的環(huán)境變量是否都有。
注意:修改完環(huán)境變量之后,要注銷或重啟電腦才能使環(huán)境變量生效
添加環(huán)境變量方法
獲取不到 IP 地址
獲取不到 IP 地址的可能有很多,
一般啟動(dòng) qemu 之后需要等個(gè)幾秒才能獲取到 IP 地址。
第一次開(kāi)機(jī)可能獲取不到 IP 地址,只要在 qemu 運(yùn)行著的情況下,關(guān)閉網(wǎng)絡(luò)共享,然后再開(kāi)一次即可。
獲取到的 IP 地址時(shí) 10.0.x.x 說(shuō)明沒(méi)有添加啟動(dòng)參數(shù),請(qǐng)參照上面基礎(chǔ)知識(shí)第 4 條添加啟動(dòng)參數(shù)。
如果運(yùn)行 QEMU 時(shí),tap 網(wǎng)卡的顯示的不是未識(shí)別的狀態(tài) ,那可能是啟動(dòng)參數(shù)填錯(cuò)了,請(qǐng)參照上面基礎(chǔ)知識(shí)第 4 條修改為正確的啟動(dòng)參數(shù)。
如果都設(shè)置對(duì)了,運(yùn)行時(shí) tap 網(wǎng)卡顯示 未識(shí)別的狀態(tài),右鍵 tap 網(wǎng)卡點(diǎn)擊 狀態(tài),如果是 無(wú) Internet 連接 ,請(qǐng)進(jìn)行網(wǎng)絡(luò)診斷試試。
有 VMvare 網(wǎng)卡的可以先禁用 再試一次。
menuconfig 找不到要配置的項(xiàng)
應(yīng)該是 env 的軟件包索引需要更新了,或者需要先按空格開(kāi)啟這一項(xiàng)功能,然后再按回車進(jìn)入配置項(xiàng)。
menuconfig 找不到要配置的項(xiàng)
解決方法:在 env 輸入命令 pkgs --upgrade 更新 env 的運(yùn)行腳本和軟件包索引。 具體方法參見(jiàn):env 使用手冊(cè)
2 環(huán)境搭建
scons 編譯結(jié)果很短
scons 編譯結(jié)果很短
解決方法:這不是問(wèn)題,編譯器只編譯被改變過(guò)的文件,沒(méi)有改變的不會(huì)重復(fù)編譯,而且,顯示已經(jīng)編譯完成了。另外,圖中的 ?[m?[ 是終端字體顏色的代碼,顯示出來(lái)是因?yàn)榻K端不支持顏色顯示。
pkgs --update 更新失敗
pkgs --update 更新失敗
原因
沒(méi)有安裝Git,也可能是沒(méi)有添加環(huán)境變量
解決方法
安裝Git,添加環(huán)境變量,并需要注銷或者重啟系統(tǒng)添加環(huán)境變量方法
創(chuàng)建網(wǎng)橋失敗
創(chuàng)建網(wǎng)橋失敗
原因,共享和網(wǎng)橋只能使用一種方式,不要同時(shí)使用。
網(wǎng)絡(luò)共享失敗
網(wǎng)絡(luò)共享失敗
原因:
上面出現(xiàn)網(wǎng)絡(luò)共享失敗的原因已經(jīng)找到,是因?yàn)镻C機(jī)安裝了360,360默認(rèn)將防火墻服務(wù)關(guān)閉了,需要手動(dòng)開(kāi)啟防火墻功能
解決方法:
具體解決辦法,參考了 https://jingyan.baidu.com/article/d5c4b52bcb9f04da560dc59d.html
Tap 網(wǎng)卡顯示未識(shí)別的網(wǎng)絡(luò)
Tap 網(wǎng)卡顯示未識(shí)別的網(wǎng)絡(luò)
解決方法:這是==正常==的狀態(tài),獲取不到ip 只要在qemu運(yùn)行的情況(即tap網(wǎng)卡顯示未識(shí)別的網(wǎng)絡(luò))下關(guān)閉網(wǎng)絡(luò)共享,再重新打開(kāi)即可。
Scons 不能用
Scons 不能用
運(yùn)行有 SDIO 紅色錯(cuò)誤
運(yùn)行有 SDIO 紅色錯(cuò)誤
解決方法:這個(gè)不用管,沒(méi)影響。
ping 命令找不到
ping 命令找不到
原因:
打開(kāi)了 RT-Thread online packages ---> 里面的某些功能,但是由于一些原因卻沒(méi)有成功更新到本地上造成的。所以有以下幾種情況
沒(méi)有在 online packages 里開(kāi)啟 ping 的功能
沒(méi)有更新軟件包
網(wǎng)絡(luò)不好更新失敗
更新成功了卻沒(méi)有 scons 重新編譯
解決方法:
更新軟件包的方法:
手動(dòng)更新軟件包 輸入命令 pkgs --update
開(kāi)啟自動(dòng)更新軟件包功能
網(wǎng)絡(luò)不好更新失敗的:去官網(wǎng)下載最新版 env,然后在 env 的配置 menuconfig -s 里面開(kāi)啟鏡像源下載 pkgs download using mirror server
3 Vscode 調(diào)試
輸入 code 命令出錯(cuò)
輸入 code 命令出錯(cuò)
注意:code 是命令 ‘.’ 是參數(shù),中間有空格
解決方法:添加 vscode 所在路徑的環(huán)境變量,添加環(huán)境變量,并需要注銷或者重啟系統(tǒng)
找不到 qemu debug
找不到 qemu debug
解決方法:請(qǐng)看下圖中的操作步驟
調(diào)試工程注意事項(xiàng)
出現(xiàn) cppdbg 錯(cuò)誤
出現(xiàn) cppdbg 錯(cuò)誤
解決方法:請(qǐng)按教程文檔上描述安裝上 c/c++ 插件
沒(méi)有 Debug@windows 選項(xiàng)
沒(méi)有 Debug@windows 選項(xiàng)
解決方法:按視頻操作下載最新的源碼。
出現(xiàn)一長(zhǎng)串?dāng)?shù)字
調(diào)試出現(xiàn)一長(zhǎng)串?dāng)?shù)字
原因:
沒(méi)有在文件 qemu-dbg.bat 的參數(shù)前加 start 或者 沒(méi)關(guān)閉之前運(yùn)行的 qemu,要先關(guān)閉之前運(yùn)行的 qemu,才能開(kāi)始調(diào)試。
解決方法:
按教程中操作,在文件 qemu-dbg.bat 的參數(shù)前加 start 或著先關(guān)閉之前運(yùn)行的 qemu,再按 F5。
按 F5 鍵 不管用
筆記本電腦的 F5 一般和功能鍵復(fù)用了,如果按下 F5 是調(diào)節(jié)屏幕亮度或其他功能,可以嘗試按 Fn + F5。
4 文件系統(tǒng)
romfs 編譯報(bào)錯(cuò)
原因:romfs ramfs 文件系統(tǒng)中的文件名和c的變量的命名一樣,只能由英文字母開(kāi)頭且僅包含數(shù)字和下劃線,不能有中橫線。
ramfs 運(yùn)行出現(xiàn)斷言錯(cuò)誤
ramfs 運(yùn)行出現(xiàn)斷言錯(cuò)誤
解決方法:這是一個(gè)已經(jīng)解決的 bug ,需要更新源碼,拉取最新源碼的方法見(jiàn)第一節(jié)環(huán)境搭建的視頻。
中文名稱文件顯示亂碼
中文名稱文件顯示亂碼
原因:顯示的編碼不同,VScode 是 UTF8, env 是 gb2312,好像是。
在 env 中找不到示例代碼
在 env 中找不到示例代碼
解決方法:env 該更新了,輸入命令 pkgs --upgrade 升級(jí) env,然后請(qǐng)仔細(xì)看一遍 env 手冊(cè)(鏈接地址在本文檔頭部)。
ls 出現(xiàn) No such directory
解決方法:這是文件系統(tǒng)初始化失敗了,查看文件系統(tǒng)初始化的代碼,檢查問(wèn)題。
5 網(wǎng)絡(luò)抓包
檢測(cè)不到網(wǎng)卡的話,請(qǐng)自行百度。
6 socket 編程
注意:socket 不支持多線程操作
-
網(wǎng)絡(luò)編程
+關(guān)注
關(guān)注
0文章
72瀏覽量
10293
原文標(biāo)題:這到底是哪里出了錯(cuò)?網(wǎng)絡(luò)編程常見(jiàn)問(wèn)題及解決方法
文章出處:【微信號(hào):RTThread,微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
4418開(kāi)發(fā)板常見(jiàn)問(wèn)題及解決方法
黃菲林的使用及常見(jiàn)問(wèn)題的解決方法
鍍通孔(PTH)常見(jiàn)問(wèn)題及解決方法
HYT主機(jī)常見(jiàn)問(wèn)題及解決方法
通信電源系統(tǒng)維護(hù)要求及常見(jiàn)問(wèn)題解決方法
基于MPC7448的高端PowerPC常見(jiàn)問(wèn)題解決方法
LED電子燈箱常見(jiàn)問(wèn)題與解決方法
labview有哪些常見(jiàn)問(wèn)題?labview三個(gè)常見(jiàn)問(wèn)題和解決方法概述
CAN系統(tǒng)中信號(hào)終端電阻常見(jiàn)問(wèn)題及解決方法
工業(yè)平板電腦的常見(jiàn)問(wèn)題及解決方法
冷水機(jī)使用中的常見(jiàn)問(wèn)題及解決方法
![冷水機(jī)使用中的<b class='flag-5'>常見(jiàn)問(wèn)題</b>及<b class='flag-5'>解決方法</b>](https://file.elecfans.com/web2/M00/4E/93/pYYBAGK7tIuAUn_dAADdPdfA5i0267.png)
評(píng)論