Stu*_*art 5 python windows apache-kafka
一点背景:我正在研究我们团队中其他开发人员将使用的一些python模块.每个模块的一个共同主题是将向Kafka发布一条或多条消息.我们此时打算使用Confluent Kafka客户端.我们在组织中对python开发很新 - 我们传统上一直是.NET商店.
复杂性:虽然我们创建的代码将在Linux(rhel 7)上运行,但大多数开发人员都会在Windows上完成他们的工作.
因此,我们需要在每个开发人员机器上编译的librdkafka C库(它具有自己的依赖关系,其中一个是OpenSSL).然后一个confluent-kafka的pip安装应该正常工作,这意味着我们的包的pip安装将起作用.理论上.
首先,我在我的Linux笔记本电脑(Arch)上安装了.我知道我已经有了OpenSSL和其他zip lib依赖项,所以这个过程很简单:
librdkafka的安装进入/usr/local:
/usr/local/lib/librdkafka.a
/usr/local/lib/librdkafka++.a
/usr/local/lib/librdkafka.so -> librdkafka.so.l
/usr/local/lib/librdkafka++.so -> librdkafka++.so.l
/usr/local/lib/librdkafka.so.l
/usr/local/lib/librdkafka++.so.l
/usr/local/lib/pkgconfig/rdkafka.pc
/usr/local/lib/pkgconfig/rdkafka++.pc
/usr/local/include/librdkafka/rdkafkacpp.h
/usr/local/include/librdkafka/rdkafka.h
Run Code Online (Sandbox Code Playgroud)
现在是痛苦的部分,使其在Windows上运行:
这就是我被困住的地方.Windows 7/8/10计算机上的标准安装是什么样的?
我从构建输出中得到以下内容,但不知道应该去哪里才能使pip install confluent-kafka"正常工作":
/librdkafka/win32/Release/librdkafka.dll
/librdkafka/win32/Release/librdkafka.exp
/librdkafka/win32/Release/librdkafka.lib
/librdkafka/win32/Release/librdkafkacpp.dll
/librdkafka/win32/Release/librdkafkacpp.exp
/librdkafka/win32/Release/librdkafkacpp.lib
/librdkafka/win32/Release/zlib.dll
<and the .h files back in the src>
Run Code Online (Sandbox Code Playgroud)
有关安装位置的任何建议吗?
我不确定在 Windows 上安装的理想位置在哪里,但我运行了以下测试并取得了一些成功。
我将输出和标头复制到C:\test\lib和C:\test\include,然后使用以下选项运行 pip install :
pip install --global-option=build_ext --global-option="-LC:\test\lib" --global-option="-IC:\test\include" confluent-kafka
Run Code Online (Sandbox Code Playgroud)
不幸的是,这不太有效,因为 confluence-kafka 设置目前不支持 Windows: https: //github.com/confluenceinc/confluence-kafka-python/issues/52#issuecomment-252098462
| 归档时间: |
|
| 查看次数: |
2791 次 |
| 最近记录: |