Joe*_*oel 6 c++ python eclipse swig cmake
我有一个带有SWIG生成的Python前端的C++项目,我使用CMake构建.我现在正在尝试找到一种方便的方法来调试我的混合Python/C++代码.我能够使用gdb获得堆栈跟踪错误,但我希望有一些更奇特的功能,例如单步执行代码和设置断点的功能,例如使用Eclipse.
使用Eclipse生成器进行CMake我能够生成一个能够导入Eclipse的项目.这很好用,我也可以单步执行纯C++可执行文件.但问题就此开始了.
首先,我无法从Eclipse内部构建Python前端.从命令行我只做"make python",但Eclipse项目中没有目标"python".
其次,一旦我编译了Python前端,我就不知道如何逐步完成包含对我的包装C++类的调用的Python脚本.Eclipse已经为Python和C++进行了调试,但是它们可以组合在一起吗?
一些更奇特的功能,例如单步执行代码和设置断点的能力,例如使用 Eclipse
这些功能有多“花哨”?您已经可以在 Python 的 pdb 或 C++ 的 gdb 中执行这些操作。
我建议使用 pdb 运行 python 代码(或使用pdb.set_trace()
在有趣的点中断执行),并将 gdb 连接到单独终端中的进程。使用 pdb 在 Python 代码中设置断点并单步执行。使用 gdb 在 C++ 代码中设置断点并单步执行。当 pdb 跳过本机调用时,gdb 将接管。当 gdbcontinue
允许 Python 继续执行时,pdb 将接管。
这应该可以让您在 C++ 和 Python 断点之间跳转,而无需通过解释器进行跟踪。
免责声明:我主要认为 IDE 是垃圾、过时的软件,所以如果 Eclipse确实有一个很好的方法来集成它,我无论如何也不会知道。
归档时间: |
|
查看次数: |
2833 次 |
最近记录: |