I manage to compile the uclibc source after I change some code and copy some files to the includes directory, but the kernel run the app seems ok, except the following error, where "simple test" is my test app's printout, so I think it is the uclibc's problem:
TMLinux start!
start_kerneler
<5>Linux version 2.6.14.7-tiny1 (Boss@SWXA) () #38 Thu Oct 9 23:43:48 2008
<6>
TMLinux pnx1500 on nohhost with 64 bit float point (Little endian) supported by
came...@gmail.com
<7>start_mem is 0x262000
virtual_end is 0x3a61000
<7>before free_area_init
<7>free_area_init -> start_mem is 0x262000
virtual_end is 0x3a61000
<7>On node 0 totalpages: 14945
<7> DMA zone: 0 pages, LIFO batch:1
<7> Normal zone: 14945 pages, LIFO batch:7
<7> HighMem zone: 0 pages, LIFO batch:1
Built 1 zonelists
<5>Kernel command line:
PID hash table entries: 256 (order: 8, 4096 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
<7>Mem_init: start=262000, end=3a61000
<6>Memory available: 56704k/57340k RAM.
<7>Calibrating delay loop... 171.21 BogoMIPS (lpj=856064)
Mount-cache hash table entries: 512
switch_to: from (0) to (1)
switch_to: from (1) to (2)
switch_to: from (2) to (1)
do_pre_smp_initcalls ok
populate_rootfs ok
switch_to: from (1) to (2)
switch_to: from (2) to (3)
switch_to: from (3) to (1)
switch_to: from (1) to (3)
switch_to: from (3) to (4)
switch_to: from (4) to (1)
<6>Linux NoNET1.0 for Linux 2.6
kernel\kthread.c: helper_init
switch_to: from (1) to (4)
switch_to: from (4) to (5)
switch_to: from (5) to (1)
kernel\ksysfs.c: ksysfs_init
fs\binfmt_tcs.c: init_tcs_binfmt
fs\locks.c: filelock_init
fs\binfmt_misc.c: init_misc_binfmt
fs\binfmt_script.c: init_script_binfmt
drivers\char\tty_io.c: tty_class_init
fs\bio.c: init_bio
drivers\char\misc.c: misc_init
drivers\block\genhd.c: genhd_device_init
switch_to: from (1) to (5)
switch_to: from (5) to (6)
switch_to: from (6) to (5)
switch_to: frm (5) to (1)
drivers\input\input.c: input_init
fs\pipe.c: init_pipe_fs
drivers\char\mem.c: chr_dev_init
kernel\user.c: uid_cache_init
kernel\params.c: param_sysfs_init
kernel\posix-timers.c: init_posix_timers
kernel\posix-cpu-timers.c: init_posix_cpu_timers
kernel\futex.c: init
mm\page_alloc.c: init_per_zone_pages_min
mm\pdflush.c: pdflush_init
switch_to: from (1) to (5)
switch_to: from (5) to (7)
switch_to: from (7) to (5)
switch_to: from (5) to (6)
switch_to: from (6) to (1)
switch_to: from (1) to (7)
switch_to: from (7) to (5)
switch_to: from (5) to (8)
switch_to: from (8) to (5)
switch_to: from (5) to (1)
mm\vmscan.c: kswapd_init
mm\tiny-shmem.c: init_tmpfs
fs\fcntl.c: fasync_init
fs\aio.c: aio_setup
switch_to: from (1) to (5)
switch_to: from (5) to (8)
switch_to: from (8) to (10)
switch_to: from (10) to (5)
switch_to: from (5) to (1)
fs\eventpoll.c: eventpoll_init
fs\devpts\inode.c: init_devpts_fs
fs\ramfs\inode.c: init_ramfs_fs
fs\romfs\inode.c: init_romfs_fs
drivers\char\random.c: rand_initialize
drivers\char\tty_io.c: tty_init
drivers\char\pty.c: pty_init
drivers\block\noop-iosched.c: noop_init
<6>io scheduler noop registered
drivers\input\mousedev.c: mousedev_init
<6>mice: PS/2 mouse device common for all mice
drivers\char\random.c: seqgen_init
do_basic_setup ok
sys_access ...
sys_access ok
free_initmem ok
run_init_process 1...
switch_to: from (1) to (10)
switch_to: from (10) to (1)
simple test
<0>Kernel panic - not syncing: Attempted to kill init!