Chinaunix首页 | 论坛 | 博客
  • 博客访问: 349008
  • 博文数量: 120
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 1810
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-11 17:50
文章分类

全部博文(120)

文章存档

2008年(120)

我的朋友

分类:

2008-04-23 14:25:55

 [推荐]uclinux中添加自己应用程序的详细过程
在uclinux中添加自己应用程序的详细过程
(文中所用的路径为uclinux安装的相对路径,比如:/uClinux-Samsung)

编译uclinux并运行成功后,下一步的工作就是写个最经典、最简单的程序“hello, world”。在uclinux下,当然要比在普通的OS下麻烦些。

(我用的是ANYWHERE-Ⅱ开发板,不同的开发板的过程应相似)
我基本是按照 documentation/Adding-User-Apps-HOWTO的步骤进行,有部分修改。

1、在user目录下创建新目录 user/sample,用来存放源代码。写“hello.c”文件。(“hello.c”文件如何写,不用我说了吧。)

2、编辑文件 user/Makefile,增加下面这行

dir_$(CONFIG_USER_SAMPLE_HELLO)    += sample

具体增加到哪里,你打开文件就会发现相似的语句,按照字母顺序,放到合适的位置。

3、编辑文件 config/Configure.help, 增加下行

CONFIG_USER_SAMPLE_HELLO
  A example C program. This Program print "hello, world" on screen.

注意:第2行以2个空格开头,总长度小于70个字符。

4、编辑文件 config/config.in
在 ‘Games’后添加新的部分
#########################

mainmenu_option next_comment
comment ‘Sample’

bool ‘hello’                     CONFIG_USER_SAMPLE_HELLO
endmenu

(注意这里的单引号字符不对,不要直接COPY这里的字符,最好自己手工输入,或参考文件中已有的行修改。)

5、创建合适的 user/sample/Makefile 文件
HELLO = hello
HELLOOBJS = hello.o

all: $(HELLO)
$(HELLO): $(HELLOOBJS)
             $(CC) $(LDFLAGS) -o $@ $(HELLOOBJS) $(LDLOBS) 此句错误
             $(CC) $(LDFLAGS) -o $@ $(HELLOOBJS) $(LDLIBS)

romfs:
            ["$(CONFIG_USER_SAMPLE_HELLO)" != y] || cp hello $(ROMFSDIR)/bin/.

clean:
            -rm -f $(HELLO) *.elf *.gdb *.o

6、重新编译生成image.rom。注意在运行make config 或make menuconfig时选择生成"hello" 。
 是否Makefile文件中修改如下:
romfs:
            ["$(CONFIG_USER_SAMPLE_HELLO)" == y] || cp hello $(ROMFSDIR)/bin/.

是否能默认选择“hello”,我还未试。

7、烧写image.rom,运行
>hello
即可看到输出“hello, world"

8、完毕。
阅读(613) | 评论(0) | 转发(0) |
0

上一篇:Linux中的Ramdisk与Initrd

下一篇:uclinux FZQS

给主人留下些什么吧!~~