file命令
# file Display
Display: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped
nm命令
查看库(.so)、中间件(.o)、可执行文件的函数(.text段)、变量(.bss .data段)
T—->text段
b—->bss段(未初始化)
D—>data段
更多信息用 man nm 指令查看
000094fc T ControlInit
000132a0 B DDR_BUFFER
00013224 D DS18B20Dir
00009ae8 T GetDS18B20Dir
00009fc4 T InitPara
000131b0 D PIPE_FIFO1
000131bc D PIPE_FIFO2
000131c8 D PIPE_FIFO3
000131d4 D PIPE_FIFO4
000131e0 D PIPE_MATH
00013214 D PIPE_PASSFAIL
000131ec D PIPE_REF
032132a8 B PersistTimecounter
00009d90 T RTC_Update
00009c28 T ReadDS18B20
000095e0 T ReadTime
00013294 B SPIFrameWidth
00009a48 T ScanUSBDevice
032132b8 B SysPara
00013298 B USBHostLAFlg
0001300c d _DYNAMIC
000130fc d _GLOBAL_OFFSET_TABLE_
0000a41c R _IO_stdin_used
w _Jv_RegisterClasses
00013008 d __JCR_END__
00013008 d __JCR_LIST__
03273c8c A __bss_end__
00013288 A __bss_start
00013288 A __bss_start__
000131a8 D __data_start
00008ad4 t __do_global_dtors_aux
00013004 t __do_global_dtors_aux_fini_array_entry
000131ac D __dso_handle
03273c8c A __end__
0000a9d0 A __exidx_end
0000a9c8 A __exidx_start
00013000 t __frame_dummy_init_array_entry
w __gmon_start__
00013004 t __init_array_end
00013000 t __init_array_start
0000a3fc T __libc_csu_fini
0000a39c T __libc_csu_init
U __libc_start_main@@GLIBC_2.4
0000a400 T __lstat
U __lxstat@@GLIBC_2.4
03273c8c A _bss_end__
00013288 A _edata
03273c8c A _end
0000a414 T _fini
00008880 T _init
00008a74 T _start
U abort@@GLIBC_2.4
U access@@GLIBC_2.4
00008ab0 t call_gmon_start
U chdir@@GLIBC_2.4
U closedir@@GLIBC_2.4
0001328c b completed.5836
000131a8 W data_start
000098ec t del_semvalue
U execl@@GLIBC_2.4
U exit@@GLIBC_2.4
U fclose@@GLIBC_2.4
U fopen@@GLIBC_2.4
U fprintf@@GLIBC_2.4
00008af0 t frame_dummy
U free@@GLIBC_2.4
U getcwd@@GLIBC_2.4
U getline@@GLIBC_2.4
U gmtime@@GLIBC_2.4
00008b24 T key_process_monitor
00013290 B keyprocess_pid
U localtime@@GLIBC_2.4
0000a400 W lstat
00008d88 T main
U memcpy@@GLIBC_2.4
U mkfifo@@GLIBC_2.4
U open@@GLIBC_2.4
U opendir@@GLIBC_2.4
0001329c B pSysPara
U printf@@GLIBC_2.4
U pthread_create@@GLIBC_2.4
U puts@@GLIBC_2.4
U readdir@@GLIBC_2.4
00009824 t sem_create
032132b0 B sem_id
00009950 t semaphore_p
000099cc t semaphore_v
U semctl@@GLIBC_2.4
U semget@@GLIBC_2.4
U semop@@GLIBC_2.4
00009884 t set_semvalue
032132a4 B share_mem_addr
032132a0 B share_mem_dt
032132b4 B share_mem_size
strip命令
在嵌入式linux命令:arm-linux-strip
作用:能清除执行文件中不必要的标示符及调试信息,可减小文件大小而不影响正常使用
备注:file命令可查看可执行文件是否strip
strip之后:
#file Display
Display: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, stripped
#nm Display
nm: Display: no symbols