unix linux 環境軟體除錯筆記

2022-03-25 08:48:26 字數 2590 閱讀 5703

員工培訓 ppt 內容

靜態**跟蹤

正規表示式簡介

函式定義

find . "*.h"

查詢函式宣告 ^\sclass::function\(

使用「在檔案中查詢」功能

find . -name

轉到某一行

括號匹配

**分析:

1、**摺疊

2、變數查詢與替換 左值和右值

3、**比較

ulteredit

其它的工具;

editplus:

優點: 1、可以免費使用 2、ftp 開啟、儲存檔案快

缺點: 1、ftp 功能對某些 unix 系統支援不好。

2、不支援函式列表功能。

source inside

優點:支援函式跳轉

缺點:查詢速度極慢

程式除錯:

常用的 shell命令

ps 命令

ps -ef |grep

正規表示式簡介

**跟蹤

grep 命令

使用示例:

find 命令

nm 命令

使用示例:

ld: 0711-317 error: undefined symbol: .cinvoice::disposeinvoice(int*,const tacctfund*,int,int,long,int,int)

ld: 0711-345 use the -bloadmap or -bnoquiet option to obtain more information.

stop.

/lntest/src/bill$find . -name "*.o" -exec nm -u -o -x 64 {} \; | grep disposeinvoice

nm: ./acctant/gactantpar.o: 0654-203 specify an xcoff object module.

nm: ./acctant/mactantcmt.o: 0654-203 specify an xcoff object module.

nm: ./acctant/matantbcmt.o: 0654-203 specify an xcoff object module.

nm: ./acctant/mgetactant.o: 0654-203 specify an xcoff object module.

./pay/cbillbase.o: .cinvoice::disposeinvoice(int*,const tacctfund*,int,int,long,int,int) u           -

./pay/cbillnewfund.o: .cinvoice::disposeinvoice(int*,const tacctfund*,int,int,long,int,int) u           -

./pay/mechannelprt.o: .cinvoice::disposeinvoice(int*,const tacctfund*,int,int,long,int) u           -

./pay/mdrawcmt.o: .cinvoice::disposeinvoice(int*,const tacctfund*,int,int,long,int,int) u           -

./pay/mprninv.o: .cinvoice::disposeinvoice(int*,const tacctfund*,int,int,long,int,int) u           -

nm: ./common/dynlib.o: 0654-203 specify an xcoff object module.

nm: ./common/ptrarray_t.o: 0654-203 specify an xcoff object module.

nm: ./common/thread.o: 0654-203 specify an xcoff object module.

/lntest/src/bill$

ar 命令

環境檢視

envipcs/ipcrm

ps - report a snapshot of the current processes.

常用命令

grep -n "texttofind" */*.cpp

find . -name "*.cpp" -exec grep  -l "texttofind" {} \;

find . -name "*.cpp" -exec grep  -n "texttofind" {} \;

-l 列印所在行

-n 列印檔案名

檢視目標檔案中所有未定義的符號

find . -name "*.o" -exec nm -u -o -x 64 {} \;

-o 表示列印檔案名

-x 指明是 64bit 的目標檔案

ulimit -c 1024

dbx filename core

stopi

catch

正規表示式

靜態除錯

編譯器巨集

__file__

__line__

-g-ddebug

Unix Linux環境程式設計學習總結

這段時間學習了unix環境高階程式設計,在這裡呢,先給大家推薦一本書 unix環境高階程式設計 這本書在這個領域可是聖經級別的。先說一下這段時間的學習感受,起初學習了幾天之後,休息了一段時間,於是自己照著那本聖經開始看了起來,有很多難懂的地方,看著看著,難免心態有點崩潰,但是還是咬著牙看了下去,雖然...

Unix Linux使用core檔案除錯程式

事實上,並不是只有sigsegv訊號產生coredump,還有下面一些訊號也產生 sigfsz 超過晚間長度限制 終止w core sigabrt 異常終止 abort 終止w core sigbus 硬體故障 終止w core sigemt 硬體故障 終止w core sigfpe 算術異常 終止...

Unix Linux 桌面環境相關知識備忘

多年前認識幾位 unix 下的資深開發人員,例如老許,隨意兄等,當時正在對 windows 下的使用者介面相關領域做研究,比如 win32k.sys 裡面的東西,directui netui 的實現原理,如何做外掛程式式的視窗風格切換器 類似於 windowblinds 那樣的機制在乙個應用內或者整...