linux下開發必備的工具

2021-08-01 06:45:45 字數 1770 閱讀 6980

strace  可用於跟蹤乙個程式裡使用了哪些系統程式設計函式

用法: strace 程式名 程式執行時的引數

ltrace  可跟蹤程式裡呼叫的庫函式

用法: ltrace 程式名

file 可檢視乙個檔案的型別

用法: file 檔名

如果file檢視的是乙個程式,可以檢視到程式的位數, 大小端, 是否依賴動態庫

如:file a.out

a.out: elf 64

-bit lsb executable, x86-

64, version 1 (sysv), dynamically linked (uses shared libs), for gnu/linux 2.6

.18, not stripped

ldd 可檢視乙個程式所有依賴的動態庫及所缺的動態庫

如: ldd a.out

linux-vdso

.so.1

=> (0x00007fff225ff000)

libc.so.6

=> /lib64/libc.so.6 (0x0000003b91600000)

/lib64/ld-linux

-x86

-64.so.2 (0x0000003b90e00000)

/

valgrind 可用於檢視程式是否有記憶體洩漏與訪問越界

用法: valgrind 程式名

如果出現的資訊有: invalid read/write of size ...

表示有可能是訪問越界了

如果出現的堆資訊有: heap summary:

==4224

==in use at exit: 2

bytes

in1 blocks

==4224

== total heap usage: 1 allocs, 0 frees, 2

bytes allocated

"frees"的次數與"allocs"的次數不匹配,則有可能是記憶體洩漏

leak summary:

==4224

== definitely lost: 2

bytes

in1 blocks

==4224

== indirectly lost: 0

bytes

in0 blocks

==4224

== possibly lost: 0

bytes

in0 blocks

==4224

== still reachable: 0

bytes

in0 blocks

==4224

== suppressed: 0

bytes

in0 blocks

// nm a.out //可檢視a.out程式裡使用的函式名及函式位址,全域性變數等資訊

readelf -h a.out //可檢視elf可執行檔案的檔案頭

readelf -a a.out //檢視elf檔案的格式資訊

objdump -d a.out //反彙編

strip : 可把程式裡的符號標誌去掉, 程式功能不變

用法: strip a.out -o b.out //把a.out裡的符號標誌全部去除掉,生成b.out.

killall 程式名 //把所有「程式名」的程序殺死

開發必備工具總結

為了提高開發效率,總結必備工具,包括git,vim,tmux linux常用工具以及記憶體洩漏檢測工具等等。待逐漸補充 git以及svn都是版本管理工具。現總結git如下 配置個人資訊 git config global user.email git config global user.name ...

Linux開發環境必備工具 命令篇

1.ftp服務訪問 filezilla 2.管理工具 svn git3.遠端訪問 ssh scp4.檔案搜尋工具 find 5.關鍵字查詢工具 grep 6.工具安裝軟體 yum rpm 7.編輯器 vim8.資料庫 mysql 9.命令幫助 man和info 10.磁碟操作利器 fdisk 直接操...

Linux 安裝必備工具

ifconfig想要檢視ip位址,卻提示 ifconfig command not found看來是沒有安裝包含該命令的包了,解決方法 yum install net toolsunzip command not foundyum install y unzip zipvim命令沒有 yum ins...