本文章向大家介绍给buildroot添加自己的软件包,自动安装到rootfs,主要包括给buildroot添加自己的软件包,自动安装到rootfs 这里的软件包是helloworld测试程序。 1、新建源码文件 mkdir /home/forlinx/helloworld vi helloworld.c #include <stdio.h> int main() { printf("buildroot helloworld\n"); return 0; } vi Makefile OPT = -O2 DEBUG = -g OTHER = -Wall -Wno-deprecated CFLAGS = $(OPT) $(OTHER) INCDIR = -I LIBDIR = -L LIBS = APP=helloworld SRCS=helloworld.c all: $(CC) -o $(APP) $(SRCS) $(CFLAGS) $(LIBDIR) $(INCDIR) $(LIBS) clean: rm $(APP) 2、在lichee/buildroot-201611/package/Config.in里添加 menu "Daniel private app package" source "package/helloworld/Config.in" endmenu 添加在结尾 3、创建规则文件 在lichee/buildroot-201611/package新建helloworld mkdir helloworld vi Config.in config BR2_PACKAGE_HELLOWORLD bool "helloworld" help This is a demo to add local app. vi helloworld.mk ################################################################################ # # helloworld # ################################################################################ HELLOWORLD_VERSION:= 1.0.0 HELLOWORLD_SITE:= /home/forlinx/helloworld HELLOWORLD_SITE_METHOD:=local HELLOWORLD_INSTALL_TARGET:=YES define HELLOWORLD_BUILD_CMDS $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_LD)" -C $(@D) all endef define HELLOWORLD_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 $(@D)/helloworld $(TARGET_DIR)/bin endef define HELLOWORLD_PERMISSIONS /bin/helloworld f 4755 0 0 - - - - - endef $(eval $(generic-package)) 4、在lichee/buildroot‐201611/configs/sun8iw11p1_hf_defconfig 添加 BR2_PACKAGE_HELLOWORLD=y buildroot‐201611 的配置文件位于 buildroot‐201611/configs/sun8iw11p1_hf_defconfig,可以修改该配置 文件对源码进行配置,配置完成后将该文件拷贝到 out/sun8iw11p1/linux/common/buildroot/.config,编译 时会按照.config 编译。 5. ./build.sh 全编译 6 ./build.sh pack 打包 |
|小黑屋|
飞凌嵌入式
( 冀ICP备12004394号-1 )
GMT+8, 2025-5-7 20:53
Powered by Discuz! X3.4
© 2001-2013 Comsenz Inc.