使用DragonBoard 410c開(kāi)發(fā)linux應(yīng)用
拿到DragonBoard 410c已經(jīng)有很長(zhǎng)一段時(shí)間,也試著研究了Adreno與410c上高通內(nèi)核驅(qū)動(dòng)。 不過(guò)為了讓廣大愛(ài)好者能夠快速上手這一臺(tái)開(kāi)發(fā)板,我打算使用官方提供的Linux指南上的源碼作為入門(mén),從而讓開(kāi)發(fā)者能夠迅速的使用手上的資源。
本文引用地址:http://www.ex-cimer.com/article/201710/365528.htm推薦配置
首先假設(shè),看這篇文章的人都有了如下圖所示的全部設(shè)備,其中需要特別提醒的是,我們使用的是Linux的一個(gè)發(fā)行版本Debian, 如果誰(shuí)想去深入研究Android以及Win 10 IoT,可以等待我的后期教程,或者去我的論壇帖中去搜索我貼出來(lái)的410c安卓開(kāi)發(fā)手冊(cè)
上圖是官方給出的推薦配置,既然我們是基于debian進(jìn)行開(kāi)發(fā),那么要注意屏幕的最佳分辨率是1080p,否則顯示效果會(huì)沒(méi)有那么完美。
先給各位看看我的配置:
有了如上的設(shè)備,我們就可以按照官方的流程刷Debian系統(tǒng)了。刷Debian系統(tǒng)可以在這里找到,這里就不再啰嗦了,我們直接開(kāi)始對(duì)開(kāi)發(fā)環(huán)境進(jìn)行熟悉吧。
基于Ubuntu在PC端使用Eclipse進(jìn)行開(kāi)發(fā)
這種方法是官方推薦的開(kāi)發(fā)方式,不但方便而且使用很簡(jiǎn)單。有些開(kāi)發(fā)者可能大部分沒(méi)有使用過(guò)Ubuntu,或者懶得再給自己的電腦安裝一個(gè)系統(tǒng)(比如我)。因此我們也可以直接在410c系統(tǒng)里面對(duì)程序進(jìn)行編寫(xiě)和編譯。這里我們先介紹PC端下基于Eclipse的交叉編譯方式
工具鏈
為了能夠讓PC端可以編寫(xiě)運(yùn)行在410c上的Linux應(yīng)用,我們需要一個(gè)交叉編譯工具鏈。交叉工具鏈,顧名思義就是能夠在不同的處理器上編譯出可以運(yùn)行于某處理器上的工具。
根據(jù)官方給出的鏈接,有兩種Linaro的交叉工具鏈可供下載,分別是32位于64位:
32位Linux系統(tǒng)工具鏈下載
64位Linux系統(tǒng)工具鏈下載
工具鏈的安裝
我們?cè)趗buntu的命令行中使用如下的指令解壓工具鏈
~/DragonBoard/toolchain/:
tar xz gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu.tar.xz
Eclipse的開(kāi)發(fā)環(huán)境安裝
Eclipse是一個(gè)出名的開(kāi)源基礎(chǔ)開(kāi)發(fā)環(huán)境,并且是高度可定制的
首先我們可以從如下鏈接中選擇自己需要的Eclipse軟件
32位Linux系統(tǒng)Eclipse下載
64位Linux系統(tǒng)Eclipse下載
然后使用如下的代碼進(jìn)行解壓
~/DragonBoard/ide/
tar xz eclipse-cpp-luna-SR2-linux-gtk-x86_64.tar.gz
至此,Eclipse的下載內(nèi)容就完成了。至于添加工具鏈,以及轉(zhuǎn)移程序可在官方的教程中看到
直接在410c上編譯與運(yùn)行
本方法沒(méi)有出現(xiàn)在官方的教程中,但是相比于Eclipse開(kāi)發(fā)環(huán)境,這種方法可以快速的進(jìn)行配置與測(cè)試,所以本文中我們就用這種方法進(jìn)行快速的上手。
登錄到410c終端
Qualcomm提供了簡(jiǎn)單粗暴的登錄方式:HDMI+鍵盤(pán)+鼠標(biāo)
因此我們可以通過(guò)410c內(nèi)置的界面登錄到系統(tǒng)內(nèi)部,410c的Debian系統(tǒng)內(nèi)置了LXDE界面,自帶LXterminal終端。因此我們本教程就使用LXterminal終端編寫(xiě)我們的程序
使用VI編寫(xiě)第一個(gè)程序
如果各位對(duì)VI不熟悉,可以去網(wǎng)上看詳細(xì)的VI教程,它是Linux中一個(gè)簡(jiǎn)單的純文本編輯器。雖然它沒(méi)有圖形界面,但是如果熟悉起來(lái)還是非常方便的,而且十分簡(jiǎn)單。 我們通過(guò)vi指令在~目錄下創(chuàng)建一個(gè)Hello.c文件,然后編寫(xiě)如下的代碼:
#include stdio.h>
#include stdlib.h>
int main(void){
puts(“?。ello World”); //這一句大家應(yīng)該比較熟悉了吧
return EXIT_SUCCESS;//程序成功退出
}
在410c內(nèi)部編譯代碼
接下來(lái)我們可以使用Debian中自帶的gcc指令對(duì)Hello.c進(jìn)行編譯了, 我們?cè)诮K端中輸入
gcc hello.c –o hello
接下來(lái)我們就可以在目錄下看到一個(gè)名為hello的可執(zhí)行文件
雖然我們已經(jīng)編譯出來(lái)了可執(zhí)行文件,但是還需要給文件提供足夠的權(quán)限才能夠執(zhí)行。接下來(lái)我們使用如下的指令使hello文件可以正確執(zhí)行:
Chmod u+x hello
然后使用以下的指令就可以執(zhí)行文件:
./hello
如果一切順利,我們可以在終端上看到!!Hello World的文字輸出。這正式表明410c已經(jīng)合理的跑起來(lái)了。
總結(jié)
本文簡(jiǎn)單的在410c中進(jìn)行了代碼編寫(xiě),并成功對(duì)代碼進(jìn)行編譯與運(yùn)行,輸出了hello world文字。 如果各位對(duì)eclipse更感興趣,也可以看我接下來(lái)的實(shí)驗(yàn)與文章。
現(xiàn)在程序已經(jīng)正確運(yùn)行,說(shuō)明我們的410c已經(jīng)可以跑更復(fù)雜的程序,下一章我將介紹在程序中直接調(diào)用硬件的方法,并提供演示圖片。歡迎大家捧場(chǎng)。
評(píng)論