【问题标题】:pybind11 - ImportError: undefined symbol: _Py_ZeroStructpybind11 - ImportError:未定义的符号:_Py_ZeroStruct
【发布时间】:2022-06-22 18:32:47
【问题描述】:

我正在关注pybind11 文档并尝试为一个简单的函数Creating bindings for a simple function 创建 Python 绑定,但是在使用以下命令编译了我的 C++ 代码之后:

g++ -O3 -Wall -shared -std=c++11 -fPIC $(python3 -m pybind11 --includes) example.cc -o example$(python3-config --extension-suffix)

当我尝试在 python 中导入库时:

import example

我收到一个ImportErrorundefined symbol: _Py_ZeroStruct

我正在使用:

  • UbuntuUbuntu 20.04.4 LTS
  • PythonPython 3.8.10
  • Pip 20.0.2

我试图解决的问题

我查看了许多与同一错误相关的文章,但无法真正了解我将如何解决我的问题:

我们将不胜感激任何形式的帮助。

【问题讨论】:

  • 你的电脑上是否安装了其他版本的python?
  • @MarcGlisse 是的,实际上安装了很多 Python 版本,默认 Python 版本是Python 3.7.13。但是,Python 3.8.10 是我在 virtualenv 中使用的 Python 版本。

标签: python c++ ubuntu pybind11


【解决方案1】:

好吧,在尝试了很多方法后,我终于决定在我的项目中添加pybind11作为子模块并使用Python3.9,这一次似乎奏效了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-22
    • 2020-08-12
    • 2018-02-24
    • 1970-01-01
    • 2022-05-27
    相关资源
    最近更新 更多