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...