Linux項(xiàng)目開發(fā),如何在BuildRoot框架內(nèi)添加外部APP呢?本文以quect-CM撥號軟件為例,做開發(fā)演示。
Buildroot是不支持移遠(yuǎn)的撥號軟件,但是日常使用中移遠(yuǎn)4g模塊又應(yīng)用廣泛,所以我們將在buildroot內(nèi)移植外部的quectel-CM本地軟件
操作步驟:
1) 在buildroot源碼目錄的package目錄下創(chuàng)建quectel-CM目錄
mkdir quectel-CM
2) 在package目錄下修改Config.in文件,末尾添加:
menu"Daniel private app package"
source"package/quectel-CM/Config.in"
endmenu
3) 進(jìn)入quectel-CM/目錄創(chuàng)建Config.in文件和quectel-CM.mk文件
Config.in文件:
configBR2_PACKAGE_QUECTEL_CM
bool "quectel-CM"
help
This is quectel qmi/gobinetdialing software
quectel-CM.mk文件:
###########################################################
# quectel-CM
###########################################################
QUECTEL_CM_VERSION:=
QUECTEL_CM_SITE:=$(TOPDIR)/../../vanxoak_app/quectel-CM
QUECTEL_CM_SITE_METHOD:=local
QUECTEL_CM_INSTALL_TARGET:=YES
define QUECTEL_CM_BUILD_CMDS
$(MAKE) CC="$(TARGET_CC)"LD="$(TARGET_LD)" -C $(@D) all
endef
defineQUECTEL_CM_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 0755 $(@D)/quectel-CM$(TARGET_DIR)/usr/bin
endef
define QUECTEL_CM_PERMISSIONS
/usr/bin/quectel-CM f 4755 0 0 - - - - -
endef
$(eval$(generic-package))
4) 在SDK目錄下創(chuàng)建vanxoak_app/quectel-CM目錄,并將quectel-CM源碼移動到vanxoak_app/quectel-CM目錄下;
5) 在buildroot目錄下執(zhí)行make ARCH=arm64 menuconfig,選中quectel-CM
6) 最后回到SDK目錄下執(zhí)行./build.sh rootfs 重新編譯文件系統(tǒng)
7) 編譯完成后,重新燒寫,在/usr/bin/目錄下就會有可執(zhí)行程序quectel-CM可執(zhí)行文件