如何调试taichi的源码

对taichi十分感兴趣,想成为taichi的贡献者,但是发现调试taichi源码十分困难,如果直接对taichi的python包直接debug,会出现c++运行异常,无法直接debug,目前我的办法是我单独搭建了一个纯python的环境,pybind生成的部分python库我用Python重构了一下(没有具体实现内容,只有个壳)。第二个就是对于pybind生成的python程序有没有什么好办法能在调试时从python程序跳入到c++程序中?

1 个赞

可以用 gdb,看这里:

以及这里:

在你本地用 python setup.py develop --user 搭建的时候,如果只改 python 部分,那么不需要重新 build (.so 文件是不变的),修改后的代码就会生效。只有改了 C++ 部分的时候才需要重新构建。

1 个赞

多谢,我刚刚发现不能调试是因为我Python的问题,我之前为了调试CPython库装了debug版本,我用anaconda重新创建了一个虚拟环境,现在可以正常调试taichi的Python库了, 还有谢谢您提供的两个文档,他对我非常有用