電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 1421|回復(fù): 0
收起左側(cè)

基于AM437x的Linux應(yīng)用程序開發(fā)步驟演示

[復(fù)制鏈接]

678

主題

902

帖子

8293

積分

高級會員

Rank: 5Rank: 5

積分
8293
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-8-21 10:19:29 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
helloworld演示程序
表 1
開發(fā)板型號
是否支持本實(shí)驗(yàn)
TL437x-EVM
支持
TL437x-EasyEVM
支持
TL437x-IDK
支持
TL437xF-EVM
支持

本文檔通過最簡單的helloworld應(yīng)用程序開發(fā),演示Linux應(yīng)用開發(fā)過程中的編寫、交叉編譯、在目標(biāo)板運(yùn)行應(yīng)用程序的步驟。
編寫helloworld源碼先在Ubuntu下建立helloword目錄,用于存放helloworld.c源碼文件
Host#mkdir -p /home/tronlong/AM437x/app/helloworld
Host#cd /home/tronlong/AM437x/app/helloworld
​

圖 1

使用gedit工具新建helloworld.c文件,并編輯程序源碼。新建helloworld.c文件的命令如下:
Host#gedit helloworld.c
在helloworld.c中輸入以下代碼:
#include<stdio.h>
int main(void){
printf("Hello World!\nwww.tronlong.com\n");
}
&#8203;

圖 2

和Windows下的文本編輯器一樣按"Ctrl+S"就可以保存編輯的內(nèi)容了,然后點(diǎn)擊左上角的紅叉按鈕退出。

交叉編譯helloworld程序在交叉編譯之前,請確保對應(yīng)平臺Linux Processor-SDK開發(fā)包自帶的交叉編譯工具鏈已生效,然后執(zhí)行以下命令交叉編譯程序:
Host#arm-linux-gnueabihf-gcc helloworld.c -o helloworld
arm-linux-gnueabihf-gcc為使用的交叉編譯工具鏈,helloworld.c為應(yīng)用程序源文件,"-o helloworld"代表交叉編譯后輸出的程序鏡像名為"helloworld",此名字可以是任意的。
&#8203;

圖 3

可以看到在當(dāng)前目錄下有helloworld鏡像文件產(chǎn)生,說明交叉編譯成功。也可以通過file命令查看其屬性。
Host#file helloworld
&#8203;

圖 4

從提示中可以看到,helloworld鏡像文件是一個(gè)32位的小端ARM平臺的程序,是可以在ARM平臺直接運(yùn)行的。

在開發(fā)板中運(yùn)行helloworld程序將helloworld鏡像文件拷貝開發(fā)板文件系統(tǒng)任意路徑,然后在可執(zhí)行鏡像文件的所在路徑執(zhí)行以下命令運(yùn)行helloworld程序:
Target# ./helloworld
運(yùn)行程序后系統(tǒng)會打印程序信息,提示如下圖:

&#8203;
圖 5

嵌入式DSP、ARM、FPGA多核技術(shù)開發(fā),學(xué)習(xí)資料下載:http://site.tronlong.com/pfdownload

發(fā)表回復(fù)

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

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表