簡體   English   中英

如何調試python - c ++程序

[英]How to debug a python - c++ program

我有一個非常復雜的分布式編程框架,其中有:

  1. 一個控制器, BC ,用Python編寫的twisted插件,在某台機器上運行;
  2. N Daemons, BM ,用Python編寫,但將C ++核心包裝為共享庫,方式如下:

import imp handle = imp.load_dynamic('mylib', '../libmy.so')

然后每個BM通過jsonrpc交互與BC進行jsonrpc ,但我們並不關心這一點。

我要做的是調試,可能是步進 / 步進 / 步調試方式,但不限於BM進程,它在前端顯示為單個終端中的同類字符流。

對C ++部分非常感興趣 ,考慮到Python代碼幾乎是最終發布並且運行良好。

由於這種語言混合,我對哪種類型的工具可能有用感到困惑。

您可以在通過Python加載的任何C / C ++擴展上使用gdb。 這樣做的方法是:

(gdb) target exec python
(gdb) run
 >>> import your_extension as ye
 >>> ye.do_something ()
 >>> # do your python here
 >>> # or just run your python script from here
(gdb) do debugging stuff

您還可以通過gdb添加斷點/完整的C / C ++調試。 來自boost :: python docs的提示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM