我正在使用 Python C API,虽然我在谷歌上搜索并找到了一些神秘的答案(这并不能解决我的问题),但我似乎无法克服这个错误。
使用 gcc -shared [...] 'pkg-config --cflags --libs python3' -fPIC [...] 编译我的程序时 (并且,是的, pkg-config 行位于反引号中),但它会产生以下错误消息:
‘PyUnicodeUCS2_FromString((const char *)"[...]")’ is not a function
有问题的代码行很简单:
PyObject *value = PyUnicode_FromString("foo")
这实际上取自 Python3 documentation 。 示例的内容可以正常编译并在 Python 解释器中运行,并且使用与 gcc
完全相同的命令行参数。
非常感谢任何帮助!谢谢!
最佳答案
当我在开发环境(LabVIEW)中嵌入Python时,我遇到了这个问题。我无法从 Python 文档示例中找到 PyUnicode_FromString
函数,但我能够以同样的方式成功使用 PyUnicodeUCS2_FromString
。
关于Python C-API PyUnicode_FromString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10038709/