如何在 Visual Studio 中调试 QuantLib-Python 模块

微乎其微

QuantLib-Python是 SWIG 生成的 Python 模块,允许访问 QuantLib (C++) 功能。我希望从 Visual Studio 调试器中调试核心 QuantLib 源代码(通过附加到 python 进程)。过去,我可以使用以下步骤在 Visual Studio 2015 上执行此操作而没有太大问题。但是,在 Visual Studio 2017(和 2019)上,调试符号不会从 PDB 文件加载到 Visual Studio。

  1. 在 Visual Studio 中构建 QuantLib C++ 代码 (Debug|x64)
  2. 将以下内容添加到quantlib.iSWIG 文件中(将调试 C++ 与发布 python 结合起来)
        %begin %{
        #ifdef _MSC_VER
        #define SWIG_PYTHON_INTERPRETER_NO_DEBUG
        #endif
        %}
  1. python setup.py wrap
  2. python setup.py build --debug
  3. python setup.py install
  4. 启动一个 python 会话并 import QuantLib
  5. 在 Visual Studio 中,将调试器附加到 python 进程
  6. 设置断点。
  7. 在 python 中执行一条应该在断点之上的语句(在 VS2019 中,这个断点没有被命中)。

我可以从模块窗口看到没有为 QuantLib 加载符号。如果我查看站点包中的 QuantLib 文件夹,我可以看到 PDB 文件确实存在。

有没有其他人遇到过这个问题?知道是什么导致了这里的问题吗?

微乎其微

我想我现在已经想通了。需要确保选择“本机代码”作为要调试的代码类型。可以使用“调试 > 附加到进程”下的“选择”按钮设置此选项。

调试 > 附加到进程

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章