關於我使用的NanoPi NEO可以去以下網址查看:
https://item.taobao.com/item.htm?id=535338278975;
http://wiki.friendlyarm.com/wiki/index.php/NanoPi_NEO/zh
買NannoPi NEO時如果帶sd卡的話,卡里面應該已經燒好系統了,可以 直接用,不用再自己燒系統到卡里。
如果需要自己手動燒系統可以參考這篇博客:https://blog.csdn.net/lu_embedded/article/details/70676835
對NanoPi NEO裏的系統進行操作需要用USB轉串口連接電腦,通過超級終端軟件連接進行操作,我用的是xshell 6進行操作的。
先把NanoPi NEO連接電腦,通過我的電腦——管理——設備管理器——端口可以查看端口號
。打開xshell ,建立新的連接。設置連接的名字(按個人喜好),選擇協議爲serial
按下圖配置參數,然後連接
進入NanoPi NEO 操作系統
之後就可以對NanoPi NEO進行操作了。
關於如何配置NanoPi NEO的靜態IP地址可以參考這篇博客:https://blog.csdn.net/qq_38313246/article/details/81412165
要把我們在linux系統下編寫的程序移植到NanoPi NEO上需要安裝交叉編譯器進行交叉編譯,這裏我使用的是官方提供的交叉編
譯器:arm-cortexa9-linux-gnueabihf-4.9.3-20160512.tar。這個交叉編譯器是64位的,所以需要在64位的linux系統中運行,具體安裝過程可以通過下面的連接參考官方教程其中的安裝交叉編譯器部分:
http://wiki.friendlyarm.com/wiki/index.php/Mainline_Uboot_and_Linux/zh#.E5.AE.89.E8.A3.85.E4.BA.A4.E5.8F.89.E7.BC.96.E8.AF.91.E5.99.A8
如果要在32位系統中裝32位的交叉編譯器進行移植的話,我之前試過好幾遍,我用的是友善之臂官網提供的arm-linux-gcc-4.4.3-20100728.tar交叉編譯器,這個編譯器交叉編譯出來的庫文件在版子上連接時會報找不到文件的問題,我在網上看了一篇貼子http://tieba.baidu.com/p/3645403366可能原因就是3樓說的
arm-cortexa9-linux-gnueabihf-4.9.3-20160512.tar這個交叉編譯器是gnueabihf;
arm-linux-gcc-4.4.3-20100728.tar這個交叉編譯器是gnueabi;
所以如果你想在32位系統上裝交叉編譯器的話,可以找一個32位的gnueabihf交叉編譯器試下行不行,這個我沒有試過,如果你成功了,可以評論給我留言,謝謝。
安裝完交叉編譯器就可以把我們在主機上寫的程序移植到版子上跑了,但是有一些程序運行需要動態鏈接一些文件。比如我現在要移植的通訊軟件的服務器程序用到了sqlite3,運行時需要依賴sqlite3 的一些庫文件,所以就要對sqlite3進行交叉編譯。這裏可以參考這個網址的教程:http://www.veryarm.com/440.html
接下來就是要把用交叉編譯過的程序傳到版子上了。檢查交叉編譯過的文件是否正確可以用file命令查看:
我是用的ftp把文件傳的版子上的。首先,通過網線把版子與自己的電腦連接。然後,配置版子的IP。IP需要和虛擬機在同一網段。
這時候我的版子IP配置是沒有問題的,也能與主機ping通
然後配置虛擬機Linux系統的IP,先設置虛擬機爲橋接模式
然後編輯虛擬網絡編輯器
配置完可能要重啓一下 ,才能生效;然後配置虛擬機系統IP
這是我配完後的IP地址,然後試一下能不能與版子ping通
現在虛擬機系統就和開發板子連上了。接下來就是傳文件給板子了。如下圖所示
到這裏 基於NanoPi NEO的linux即時通訊軟件的環境搭建就完成了,後續客戶端運行只要保證板子與客戶機在同一個局域網裏就可以了。