当前位置:   article > 正文

解决grpcio在Mac M1上不匹配:dlopen symbol not found in flat namespace ‘_kCFStreamPropertySocketNativeHandle‘

解决grpcio在Mac M1上不匹配:dlopen symbol not found in flat namespace ‘_kCFStreamPropertySocketNativeHandle‘

背景

使用MacBook M1跑联邦学习框架Flower时报错,ImportError: dlopen(python3.9/site-packages/grpc/_cython/cygrpc.cpython-39-darwin.so, 0x0002): symbol not found in flat namespace ‘_kCFStreamPropertySocketNativeHandle’

原因

grpcio构建问题,在M1上不匹配

解决

  1. 首先执行:pip uninstall grpcio
  2. 将环境添加到 .zshrc 文件的末尾,执行下面三行命令
    • export GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=1
    • export GRPC_PYTHON_BUILD_SYSTEM_ZLIB=1
    • export GRPC_PYTHON_LDFLAGS=" -framework CoreFoundation"
  3. 最后执行:pip install grpcio --no-binary :all:
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/598613
推荐阅读
相关标签
  

闽ICP备14008679号