M1 Mac 上安装 python mysqlclient

5 篇文章 0 订阅

下面记录了在 M1 Mac 上如何解决安装 python mysqlclient 失败的问题。

安装过程

一开始的安装命令:

pip install mysqlclient==1.4.4

安装 mysqlclient 会出现下面的问题:

mysql_config not found

这个问题可以通过在本地安装 mysql 来解决:

$ brew install mysql
Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)!
To rerun under ARM use:
    arch -arm64 brew install ...
To install under x86_64, install Homebrew into /usr/local.

根据第一次安装失败的提示,进行了第二次安装:

arch -arm64 brew install mysql

然后再尝试安装 mysqlclient 时又出现了下面的问题:

ld: library not found for -lzstd

通过 参看内容1,知道了需要安装 zstd

brew install zstd

安装完 zstd 后重新尝试安装 mysqlclient,但仍是那个错误 ld: library not found for -l,然后通过 参看内容2 得知,可以通过 env 设置环境变量指定依赖库的位置:

env LDFLAGS="-L/opt/homebrew/Cellar/zstd/1.5.0/lib" pip install mysqlclient==1.4.4

这时发现类似的问题:

ld: library not found for -lssl

然后在 参看内容2 中可以得知需要安装 openssl

brew install openssl

在确认已经安装 openssl 后,再尝试安装 mysqlclient,发现问题仍没有解决,这时再通过 env 设置一下 openssl 依赖库的位置:

env LDFLAGS="-L/opt/homebrew/Cellar/zstd/1.5.0/lib -L/opt/homebrew/Cellar/openssl@1.1/1.1.1k/lib" pip install mysqlclient==1.4.4

到这里就成功安装了 mysqlclient

参考内容

  1. ld: library not found for -lzstd while bundle install for mysql2 gem Ruby on macOS Big Sur 11.4
  2. error install mysqlclient with pip, library not found for -lssl
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

K8sCat

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值