从源代码为 SELINUX 32 位安装 GRPC

Install GRPC from source for SELINUX 32bit

我必须从源安装 GRPC python,因为目标机器没有互联网连接。目标机器安装了 python 3.7 和 pip3。任何人都可以分享该过程如何做。提前致谢

可以尝试将gRPCPython打包为二进制轮,发送到目标机器。在您的场景中,如果您没有更改 gRPC 源代码并且只想在没有互联网的机器上安装 gRPC,我建议您下载二进制轮:https://pypi.org/project/grpcio/#files

您可能还需要升级您的 pip 版本以从最新标准的二进制轮安装。如果您的发行版是 SELINUX 32 位,我想下面的轮子可能会起作用:manylinux_2_17_i686.manylinux2014_i686.whl

这是我解决问题的方法。使用下载的 gRPC 包的主要问题是 cython 编译器依赖于平台。 cython 编译器位于 grpc/_cython 中,它看起来像这样 "cygrpc.cp37-win_amd64.pyd"。这里 cp37 是 python 版本,win 是 os 或平台名称,amd64 是体系结构。

我为了解决这个问题所做的是,我必须为 32 位 Linux 平台下载相应的 cython 文件 - cygrpc.cpython-37m -i386-linux-gnu.so 。然后我创建了 2 个单独的 grpc 包——一个用于 Linux,一个用于 Windows。这可以扩展到您想要的任意多的平台和架构。

在此之后使用 pf = platform.system() 确定 os 和体系结构并调用相应的 grpc 包。

彻底解决了我的问题