gpt4 book ai didi

python - C++ boost + Python : undefined reference to Py_Dealloc

转载 作者:行者123 更新时间:2023-12-05 05:53:05 26 4
gpt4 key购买 nike

我正在尝试在 Boost 上使用 Python 模块。但是,我收到一个错误,我无法找到要处理的内容。

好像少了个开关之类的,但是我真的找不到...

有人知道吗?

谢谢!!!

/usr/include/python3.8/object.h|478|undefined reference to `_Py_Dealloc'|

系统数据:

Using Code::blocks, Python 3.8, Linux Mint, installed Boost by apt-get

构建日志:

g++ -Wall -fexceptions -g -I/usr/lib/x86_64-linux-gnu/ -I/usr/include/python3.8/ -I/home/tavares/Downloads/boost/boost_1_77_0/stage/lib -c /home/tavares/Trabalho/pesquisa/softwares/optpipeline/PyOPY/PyOPI/bark.cpp -o obj/Debug/bark.o
g++ -Wall -fexceptions -g -I/usr/lib/x86_64-linux-gnu/ -I/usr/include/python3.8/ -I/home/tavares/Downloads/boost/boost_1_77_0/stage/lib -c /home/tavares/Trabalho/pesquisa/softwares/optpipeline/PyOPY/PyOPI/main.cpp -o obj/Debug/main.o
g++ -L/usr/lib/x86_64-linux-gnu/ -o bin/Debug/PyOPI obj/Debug/bark.o obj/Debug/main.o -lboost_program_options -lboost_system -lboost_python38
/usr/bin/ld: obj/Debug/bark.o: in function `_Py_DECREF':
/usr/include/python3.8/object.h:478: undefined reference to `_Py_Dealloc'
/usr/bin/ld: obj/Debug/bark.o: in function `boost::python::detail::none()':
/usr/local/include/boost/python/detail/none.hpp:16: undefined reference to `_Py_NoneStruct'
/usr/bin/ld: /usr/local/include/boost/python/detail/none.hpp:16: undefined reference to `_Py_NoneStruct'
/usr/bin/ld: obj/Debug/bark.o: in function `boost::python::api::object::object()':
/usr/local/include/boost/python/object_core.hpp:400: undefined reference to `_Py_NoneStruct'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu//libboost_python38.so: undefined reference to `PyExc_ValueError'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu//libboost_python38.so: undefined reference to `PyLong_AsLong'

最佳答案

这有点旧,但尝试添加

$(python3.10-config --ldflags --embed)

链接阶段的命令。

你的链接命令变成类似

g++ -L/usr/lib/x86_64-linux-gnu/ -o bin/Debug/PyOPI obj/Debug/bark.o obj/Debug/main.o  -lboost_program_options -lboost_system -lboost_python38
$(python3.10-config --ldflags --embed)

希望这对某人有帮助。

关于python - C++ boost + Python : undefined reference to Py_Dealloc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69980953/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com