日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

arm-linux 交叉编译后程序,ARM交叉编译下,应用程序实践

發(fā)布時間:2025/3/21 linux 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 arm-linux 交叉编译后程序,ARM交叉编译下,应用程序实践 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

ARM交叉編譯下,應(yīng)用程序?qū)嵺`

一。首先準備一個小程序

hello.c

代碼如下:

#include

int main(void) {

printf("hello,world\n");????????????? //向終端打印字符輸出

}

二。然后編寫makefile如下:

CROSS=opt/host/armvl/bin/arm-linux-????????????????#這個是定義的宏,指向具體得

#交叉編譯工具路徑

all: hello

hello:

$(CROSS)gcc -o hello hello.c????????????????????????? ?#編譯ELF可執(zhí)行文件

clean:

@rm -vf hello *.o *~??????????????????????????????????????? #輸入make clearn時刪除編譯文件

#尤其注意這里得交叉編譯工具一定要與燒寫內(nèi)核得交叉編譯工具一致

#否則產(chǎn)生得文件armlinux內(nèi)核不能執(zhí)行

三。在終端輸入 : make 生成可執(zhí)行文件hello

四。將hello,down到目標板得文件系統(tǒng)中

這里有三種方法:

1.解壓縮ramdisk.image.gz,把自己寫得hello文件復(fù)制進去,重新打包,并燒錄到目標板上,方法見我的另一篇博文。這個方法優(yōu)點是徹底的燒錄上去,掉電不會丟掉自己的程序,而其他方法都是將應(yīng)用程序放在ram中,重啟就沒有了。缺點很明顯,太復(fù)雜費時,而且不利于延長flash的壽命,只需要再徹底寫好應(yīng)用程序后使用,調(diào)試不推薦。

2.使用USB。

首先在PC端輸入:

#mount -t vfat /dev/sdb1? /mnt/??????????? 掛載U盤到mnt文件夾,sdb1根據(jù)實際情況修改

#cp -av /hello????? /mnt/??????????????????????? 把自己寫的hello文件夾復(fù)制到u盤

#cp /????????????????????????????????????????????????? 這步確保路徑不在u盤,卸載時不會busy

#umount /mnt???????????????????????????????????? 卸載u盤

超級終端上:

#mount -t vfat /dev/sda1? /mnt/????????? 同樣掛u盤

#cp -av?? /mnt/hello????/???????????????????? 把U盤中自己寫的文件復(fù)制到根目錄

cd? /mnt/hello

./hello???????????????????????????????????????????????? 執(zhí)行自己的文件

#umount /mnt

用U盤調(diào)試前提時目標板上的linux支持USBhost,過程簡單但是比較麻煩。

2.使用NFS

首先配置NFS服務(wù),見另一篇博文,關(guān)鍵一定要關(guān)掉防火墻,在/etc/exports文件中加入允許訪問的路徑。

(1)關(guān)閉防火墻:

#setup??????????????????//進入系統(tǒng)服務(wù),取消iptables和ipchains,選上nfs

#/etc/rc.d/init.d/iptables stop

#vim?? /etc/exports

在vim中添加 /nfs 192.168.2.120(rw,insecure,no_root_squash,no_all_squash),含義是允許下位機讀寫PC的/nfs文件夾

(2)連好網(wǎng)線,PC端,將hello復(fù)制到共享文件夾nfs:

(3)超級終端輸入:

#mount -t vfat -o onlock 192.168.2.126:/nfs /mnt?????? 掛載PC的nfs文件夾到目標板mnt中

#cd /mnt/hello??????????????????? 遠程瀏覽自己的程序

#./hello?????????????????????????????? 遠程執(zhí)行

這個方法前提是下位機已經(jīng)打通了網(wǎng)口,并且支持nfs服務(wù),推薦用這種方法調(diào)試

*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。

總結(jié)

以上是生活随笔為你收集整理的arm-linux 交叉编译后程序,ARM交叉编译下,应用程序实践的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。