Mac OS 安装 rocketmq-client-python【ImportError: rocketmq dynamic library not found】

问题

执行pip install rocketmq-client-python

之后调用的时候报错:

File "/home/ops/python3/lib/python3.7/site-packages/rocketmq/ffi.py", line 40, in <module>

raise ImportError('rocketmq dynamic library not found')

ImportError: rocketmq dynamic library not found

原因

查了一堆问题后,发现需要先安装rocketmq的cpp包。

步骤1

参照github地址:

GitHub - apache/rocketmq-client-python: Apache RocketMQ python client​​​​​

中prerequisites的步骤,

步骤2

这里需要注意,mac上未安装wget的话需要先安装wget。

直接键入:brew install wget

步骤3

如果brew未安装的话,参照如下安装教程:MAC 安装brew[更新日期 20220428]_Labiod的博客-优快云博客 

 步骤4

wget安装好后:

执行如下指令:参考自上述GitHub。

    wget https://github.com/apache/rocketmq-client-cpp/releases/download/2.0.0/rocketmq-client-cpp-2.0.0-bin-release.darwin.tar.gz
    tar -xzf rocketmq-client-cpp-2.0.0-bin-release.darwin.tar.gz
    cd rocketmq-client-cpp
    mkdir /usr/local/include/rocketmq
    cp include/* /usr/local/include/rocketmq
    cp lib/* /usr/local/lib
    install_name_tool -id "@rpath/librocketmq.dylib" /usr/local/lib/librocketmq.dylib

步骤5

如果步骤4中: mkdir /usr/local/include/rocketmq 报找不到路径和权限问题的错误。

就将提替换成:

sudo mkdir /usr/local/include

sudo mkdir /usr/local/include/rocketmq

如果步骤4中

    cp include/* /usr/local/include/rocketmq
    cp lib/* /usr/local/lib
    install_name_tool -id "@rpath/librocketmq.dylib" /usr/local/lib/librocketmq.dylib

爆权限问题,就将其替换成:

    sudo cp include/* /usr/local/include/rocketmq
    sudo cp lib/* /usr/local/lib
    sudo install_name_tool -id "@rpath/librocketmq.dylib" /usr/local/lib/librocketmq.dylib

步骤6

待上述操作完成后,执行如下命令:

pip uninstall rocketmq-client-python

pip install rocketmq-client-python

完成

如上述步骤即可。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值