美文网首页
关于pykafka缺少rdkafka包报错的问题解决方案

关于pykafka缺少rdkafka包报错的问题解决方案

作者: Minusonewly | 来源:发表于2020-03-02 14:06 被阅读0次

    程序程序时所报的错误:

    ImportError: cannot import name '_rd_kafka' from 'pykafka.rdkafka'
    

    解决方案:

    1.卸载pykafka
    pip uninstall pykafka
    
    2.按步骤安装rdkafka
    yum -y update gcc
    yum -y install gcc+ gcc-c++
    git clone https://github.com/edenhill/librdkafka.git
    cd librdkafka/
    ./configure
    make&& make install
    

    默认是把动态库安装到/usr/local/lib下的,所以在Linux的默认共享库路径/lib和/usr/lib下找不到。因此添加的library如果不在/lib和/usr/lib里面的话,就需要往/etc/ld.so.conf文件追加library所在的路径,然后重新调用下ldconfig命令即可。

    echo "/usr/local//lib">> /etc/ld.so.conf
    ldconfig 
    
    3.重新编辑安装pykafka

    Python可以通过pip工具安装pykafka
    但是我们需要使用librdkafka扩展,使用pip工具是无法安装librdkafka的,所以我们需要源码编译安装pykafka。

    git clone [https://github.com/Parsely/pykafka.git](https://github.com/Parsely/pykafka.git)
    cd pykafka/
    mkdir librdkafka
    cp /root/librdkafka-0.11.1/src/rdkafka.h /root/pykafka/librdkafka/   #rdkafka.h 文件路径如果不知道可以用find / -name rdkafka.h命令来寻找.
    python setup.py build
    python setup.py install
    

    完成安装啦!重启一下程序看看问题是不是已经解决啦!

    相关文章

      网友评论

          本文标题:关于pykafka缺少rdkafka包报错的问题解决方案

          本文链接:https://www.haomeiwen.com/subject/tpbmkhtx.html