本文導讀
如何在嵌入式linux開發板上運行貪吃蛇游戲呢?本文以EasyARM-i.MX283A為硬件載體,簡述其運行貪吃蛇小游戲的方法及步驟。
1
原料準備
硬件方面
使用ZLG致遠電子提供的EasyARM開源套件。EasyARM-i.MX283A采用NXP的ARM9核心,運行專為嵌入式linux產品裁剪的uboot、kernel及rootfs,其豐富的外設資源及完善的驅動支持為日常學習及項目評估提供堅實基礎。該板默認支持TFT-4.3液晶顯示屏,搭配USB串口線、網線等必要配件即可快速上手。
ZLG致遠電子EasyARM-i.MX283A開源套件
軟件方面
使用linux宿主機。嵌入式linux的開發大多使用ubuntu系統,可以從 Ubuntu 官網下載的 ISO 鏡像,安裝后得到純凈的 Ubuntu,再搭建嵌入式linux開發環境。建議使用ZLG致遠電子官網提供的Ubuntu系統,該系統已經安裝了完整的嵌入式 Linux 開發環境。
Ubuntu開發環境
2
環境搭建
宿主機方面
需要在VMware下運行ubuntu系統,并且正確安裝linux-arm交叉工具鏈及qt-sdk。
交叉工具安裝比較簡單,將EasyARM-i.MX283A資料中的“gcc-4.4.4-glibc-2.11.1-multilib-1.0_EasyARM-iMX283.tar”解壓到ubuntu的/opt(或其他)目錄下,再在“profile”或“bashrc”中export即可。若在任意shell中輸入“arm-none”,按TAB鍵后可自動補全下圖“arm-none-linux-gnueabi-”則證明工具鏈安裝成功。
安裝交叉編譯器
安裝qt-sdk的主要目的是獲取QT庫及qmake工具。在ubuntu聯網的情況下使用命令“sudo apt-get install qt-sdk”獲取并安裝qt-sdk,若失敗請先執行“sudo apt-get update”更新源。安裝成功后,會在/usr/bin/目錄下產生兩個可執行文件 qmake 和 qmake-qt4,如下圖。分別打印信息可知qmake是嵌入式版本的指令,qmake-qt4是桌面版本的指令。
安裝qmake
目標機方面
EasyARM-i.MX283A需要執行的操作較少,需要的qt庫已經交叉編譯后移植上去,我們需要關注的主要是使用SSH工具登錄到開發板上,并于宿主機通過NFS建立文件共享,以便將編譯好的可執行文件拷貝到開發板。當然,使用U盤或者SD卡拷貝也行,只不過頻繁的插拔、掛載操作顯得特別麻煩。
宿主機目標板間的文件拷貝
3
測試源碼
本文的重點在于體驗嵌入式linux平臺下的游戲運行,代碼的書寫不是今天的重點呦。So,筆者決定尋求“某度”幫助。在某論壇下載到源碼,我們先測試下是否報錯。下載得到的源碼如下圖。
貪吃蛇源碼
在源碼目錄下執行“qmake-qt4 -project”生成qt工程,再執行“qmake-qt4”編譯工程得到Makefile文件,最后執行“make”命令得到可執行文件。
編譯貪吃蛇
這個snake-demo可執行程序就是我們要得結果了,執行它游戲將開始運行。
運行貪吃蛇
4
編譯ARM版本
測試源碼沒有報錯,下面進行ARM版本的編譯。前面我們提到,qmake-qt4是桌面版的qmake工具,qmake是ARM版本的qmake工具,因此本次使用qmake在源碼目錄重復第3小節的編譯步驟。得到的文件看起來和原來沒什么區別,執行“./snake-demo”會提示“無法執行二進制文件”,通過兩者的Makefile文件和“file”命令的查看,通過對比確認此時的snake-demo就是我們需要的,詳情見下圖。
qmake-qt4與qmake執行對比
將此文件拷貝到開發板上并執行。是不是有哪里不對勁?沒錯,中文無法顯示。
EasyARM-i.MX283A的QT庫默認不支持中文,需要給它更新個中文字庫。
缺少中文庫
在網絡上下載ttf格式的中文字庫,拷貝到開發板的/opt目錄下。“QT_QWS_FONTDIR”環境變量為qt應用程序提供字庫尋找路徑,更新它。在shell下執行“export QT_QWS_FONTDIR=/opt”,并在程序執行是添加執行參數指定字庫名“./snake-demo -qws -font wqy-microhei”。OK,點擊觸摸屏操作小小貪吃蛇吧!
添加中文支持
5
結語
EasyARM-i.MX28x系列開源套件在致遠電子淘寶官方店有售,若您準備用作實際項目開發,強烈建議您選用工業級EPC系列ARM板。
-
嵌入式
+關注
關注
5045文章
18817瀏覽量
298478 -
Linux
+關注
關注
87文章
11123瀏覽量
207900
原文標題:“貪吃蛇”帶你玩轉linux
文章出處:【微信號:ZLG_zhiyuan,微信公眾號:ZLG致遠電子】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論