openwrt sdk 編譯工具 及 hello world


需要先在 make menuconfig 中打開 sdk
make -j4
在 bin\targets\ramips\mt7620生成一個
openwrt-sdk-ramips-mt7620_gcc-7.3.0_musl.Linux-x86_64.tar.xz
tar xf openwrt-sdk-ramips-mt7620_gcc-7.3.0_musl.Linux-x86_64.tar.xz

以后使用 sdk 編譯自己的軟件包。

openwrt sdk 的用處。

一般在嵌入式開發軟件要做的事情是這樣,需要先交叉編譯某個庫,如 freeType 或 jpeg 等。生成的 頭文件及庫需要放在一個位置。

在編譯你的軟件時候,在makefile 中指定庫的頭文件,庫路徑什么的,在發布固件的時候,也需要把 so 庫發布到 lib 里面。這些工作是手動做的。

yocto 是一整套,構建,固件,解決庫依賴的編譯工具。(篇符有限,不在這里介紹 yocto )

openwrt sdk 和 yocto 功能差不多,它們提供的功能是。

1,下載

2,打補丁

3,依賴關系

4,編譯進固件

編譯 helloworld 軟件包

參考
https://openwrt.org/docs/guide-developer/helloworld/start

新建2個文件 helloworld.c Makefile

放到 sdk packager helloworld 里面的 src

make 以后會打開配置界面,並自動選擇到 helloworld 為 M

結果 在
bin\packages\mipsel_24kc\base 生成了helloworld_1.0-1_mipsel_24kc.ipk 復制到 路由器中,這里用的是 samba 共享,掛載了 /tmp 節點。

root@OpenWrt:/tmp# opkg install helloworld_1.0-1_mipsel_24kc.ipk
Installing helloworld (1.0-1) to root...
Configuring helloworld.
root@OpenWrt:/tmp# helloworld
hello world

Makefile 寫法,在下一篇文章中。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM