由于目标机器没有互联网连接,我必须从源代码安装GRPC python。目标机器安装了python 3.7和pip3。有人能分享一下这个过程吗?提前感谢
您可以尝试将gRPC Python打包为二进制轮并将其发送到目标机器。在您的场景中,如果您没有更改gRPC源代码,只是想在没有互联网的机器上安装gRPC,我建议下载二进制轮:https://pypi.org/project/grpcio/#files
您可能还需要升级您的pip版本以从最新标准的binary wheel安装。如果您的发行版是SELINUX 32位,我猜以下轮子可能会起作用:manylinux_2_17_i686.manylinux2014_i686.whl
我是这样解决这个问题的。使用下载的gRPC包的主要问题是cython编译器依赖于平台。cython编译器在grpc/_cython中,它看起来像这样"cygrpc.cp37-win_amd64.pyd">。这里cp37是python版本,win是操作系统或平台名,amd64是体系结构。
为了解决这个问题,我必须下载相应的32位Linux平台的cython文件-cygrpc.cpython-37m-i386-linux-gnu.so。然后我创建了两个独立的grpc包——一个用于Linux,一个用于Windows。这可以扩展到任何你想要的平台和架构。
在此之后使用pf = platform.system()
来确定操作系统和体系结构并调用相应的grpc包。
这完全解决了我的问题。