歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> UcLinux添加自定義應用程序的詳細過程講解

UcLinux添加自定義應用程序的詳細過程講解

日期:2017/2/28 17:49:46   编辑:Linux教程
( 文中所用的路徑為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) $(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、完畢。
注意:GCC前必須要用[Tab],否則會出現錯誤:missing separator. Stop.
Copyright © Linux教程網 All Rights Reserved