uclinx用户应用程序添加过程,在网上有很多资料,但是大部分是转的,而且具体方法非常多,自己在实践的过程中,找到了一种自己比较喜欢的,没有什么技术含量,算是记录吧
1)在/user目录下新建sample目录,并将hello.c和Makefile文件添加到此文件下.
hello.c
#include "stdio.h"
int main (void)
{
printf("hello,world");
return 0;
}
由于只是使用到uclinux库文件,所以Makefile如下:
EXEC=hello
OBJS=hello.o
all: $(EXEC)
$(EXEC): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS) (前面的空格使用TAB键)
romfs:
$(ROMFSINST) /bin/$(EXEC) (前面的空格使用TAB键)
clean:
-rm -f $(EXEC) *.elf *gdb *.o (前面的空格使用TAB键)
2)修改相关配置文件
修改/config/config.in文件
###################################
mainmenu_option next_comment
comment 'My Application'
bool 'hello' CONFIG_USER_HELLO
endmenu
####################################
修改/user/Makefile
根据原有文件的内容,最好是按照字母排序添加行
dir_$(CONFIG_USER_HELLO) +=sample
至于config/Configure.help修改与否对于程序运行不是必须的,只是作为程序完整性的一部分。
3)回到uclinux根目录下,做make xconfig或者make menuconfig,在内核配置的时候选择My Application下的hello,即将用户应用程序编译到内核中了。继而make dep 等等
若是添加的用户应用程序需要用户自己的头文件,即将用户头文件放到sample目录下,在Makefile中只要添加
LDFLAGS += -I.
即将头文件添加到编译路径。其他步骤同上