【问题标题】:Undefined symbol in libboostlibboost 中未定义的符号
【发布时间】:2015-03-18 18:07:17
【问题描述】:

我看到以下错误

ImportError: /usr/local/lib/libboost_python.so.1.57.0: 
undefined symbol: PyUnicode_AsUTF8String

在 .so 文件中,我看到以下符号未定义

@Ubuntu-1204-precise-64-minimal:/usr/local/lib$ nm libboost_python.so.1.57.0
| grep PyUnicode_AsUTF8String
             U PyUnicode_AsUTF8String

这个符号未定义的原因是什么?

我还检查了 ldd,所有库都在标准位置。

【问题讨论】:

    标签: c++ gcc boost


    【解决方案1】:

    PyUnicode_AsUTF8String 函数是 python 运行时的一部分。您也应该通过向 GCC 提供适当的链接器选项,将您的扩展链接到 python 库。请注意,python 3 和 python 2 之间存在差异。

    【讨论】:

      猜你喜欢
      • 2012-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-06
      相关资源
      最近更新 更多