【问题标题】:Python lib: undefined symbol: _Py_FalseStructPython lib:未定义符号:_Py_FalseStruct
【发布时间】:2019-03-25 20:36:17
【问题描述】:

我试图在一台机器上安装没有 sudo 权限的 pybgpstream。 Python 安装是系统范围的。我必须在 ~/.local/lib 下安装所有东西... 安装 libbgstream 二进制文件后,我想安装 pybgpstream

pip install --global-option build_ext --global-option '--include-dir=/home/USER/.local/include' --global-option '--library-dir=/home/USER/.local/lib' pybgpstream

安装成功后,我尝试使用 pybgpstream 运行一些脚本。无效:

ImportError: /home/USER/.local/lib/python2.7/site-packages/_pybgpstream.so: undefined symbol: _Py_FalseStruct

我将 /home/USER/.local/lib/ 添加到 LD_PATH... 不知道怎么回事……

【问题讨论】:

  • 看起来您使用 python 3 编译了 lib,但正在尝试使用 python 2 运行它。

标签: python linux installation pip debian


【解决方案1】:

有一个使用 pybgpstream 的 docker 解决方案。这是docker文件

FROM python:3.8
 
RUN apt update \
&& apt install -y build-essential curl zlib1g-dev libbz2-dev libcurl4-openssl-dev librdkafka-dev python3-gi-cairo nano \
&& mkdir ~/src && cd ~/src/ && \
curl -LO https://research.wand.net.nz/software/wandio/wandio-4.2.3.tar.gz && \
tar zxf wandio-4.2.3.tar.gz && \
cd wandio-4.2.3/ && ./configure && make install && ldconfig && \
cd ~/src/ && \
curl -LO https://github.com/CAIDA/libbgpstream/releases/download/v2.1.0/libbgpstream-2.1.0.tar.gz && \
tar zxf libbgpstream-2.1.0.tar.gz && \
cd libbgpstream-2.1.0/ && ./configure && make check install && ldconfig && \
pip install pybgpstream && \
pip install ipython && \
pip install statsmodels && \
pip install matplotlib && \
pip install ipykernel && \
pip install pylint && \
pip install autopep8
 
CMD ["/bin/bash"]

您也可以每次都使用此容器并运行 bgp 流

【讨论】:

    猜你喜欢
    • 2013-11-20
    • 2018-10-01
    • 2014-02-26
    • 1970-01-01
    • 1970-01-01
    • 2012-08-06
    • 2015-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多