TARS 基於TARS的除錯

2021-10-18 23:11:05 字數 2469 閱讀 8846

ref

ref2

man gdb

gdb除錯手冊

gdb除錯動態庫

gdb如何除錯動態庫2

linux下的動態庫和靜態庫

dwarf

dwarf官網安裝包

dwarf官網的安裝路徑

開源中國提供的dwarf包

gdb對dwarf除錯資訊的解析和使用

1.判斷你的檔案是否有被除錯的資格

2.makefile中加--debug=all使得生成的程式可以被除錯

3.gdb執行程式並按常規思路進行除錯即可

/home/muten/module/tars/tarsframework/build/lib(靜態庫的存放位置)

(gdb)b main

(gdb)r

make breakpoint pending on future shared library load?(y)表示在原始檔中沒有找到相應的**,可能出現在

共享庫中,就預先問你要不要設定這樣乙個斷點以供後面來使用.此處如果想要除錯共享庫,那麼就要選擇yes,

否則就選擇no.

利用dwarfdump /home/muten/module/tars/tarsframework/build/servers/tarsregistry/bin/tarsregistry >> 11 檢視供gdb使用的debug和一些符號表資訊.

dwarfdump 生成的檔案中的的dw_tag_subprogram對應的函式名

這個啥意思?為什麼我設斷點設到這個檔案裡面來了呢?????????????????????????

找**鏈結

我想我找到答案了!

改了重新編譯

strip鏈結

cmake生成debug和release兩個版本的

cmake 設定 debug release模式

最終解決方案記錄(直呼內行!!專業!!!!!太感謝啦!!!)(:

diff cmake_install.cmake.bak20210205 cmake_install.cmake(此處無用)

cmake .. -dcmake_build_type=debug

make -j8

make install

pwdgdb /home/muten/module/tars/tarsframework/build/servers/tarsregistry/bin/tarsregistry

tars的定址方式

主控定址 主控定址就是通過registry的路由,找到服務實際的ip 埠,然後遠端呼叫。tars中的註冊中心是registry,路由 管理服務 提供服務節點的位址查詢 發布 啟停 管理等操作,以及對服務上報心跳的管理,通過它實現服務的註冊與發現。所以如果我們通過路由去定址,那麼就是去registry...

十 tars服務,第乙個c 的tars服務

官網位址 1 登入tars web管理端,建立應用 3 執行指令碼,若指令碼沒有許可權,執行chmod 700 create tars server.sh cd home py mytars 本例中執行 helloserver.h helloserver.cpp hello.tars helloim...

騰訊tars微服務安裝筆記

tarsphp 文件位址 謝謝大佬的整理 安裝需要元件 例如,在centos下,執行 yum install glibc devel yum install gcc yum install gcc c yum install lrzsz yum install y gitgit clonetar z...