macOS Ventura 13.6安装apache-airflow-providers-mysql/mysqlclient时pkg-config报错的解决咨询
macOS Ventura 13.6安装apache-airflow-providers-mysql/mysqlclient时pkg-config报错的解决咨询
嗨,我之前在macOS Ventura 13.6上安装mysqlclient的时候也碰到过一模一样的问题,本质是编译mysqlclient需要的pkg-config工具和MySQL/MariaDB的开发依赖包没装齐。下面是一步步的解决方法:
第一步:安装Homebrew(如果还没装的话)
如果你还没装Homebrew,先打开终端执行这个命令安装:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安装完成后记得按照提示把Homebrew的路径加到你的shell配置文件(比如~/.zshrc或~/.bash_profile)里,然后重启终端或者执行source ~/.zshrc让配置生效。
第二步:安装pkg-config和MySQL/MariaDB开发依赖
终端里执行下面的命令,安装pkg-config和mysql-client(包含编译需要的头文件和库):
brew install pkg-config mysql-client
如果你更倾向于用MariaDB,也可以换成:
brew install pkg-config mariadb-client
第三步:让系统找到MySQL/MariaDB的配置
安装完成后,需要让pkg-config能找到mysqlclient的配置文件。执行下面的命令(根据你装的是mysql还是mariadb选一个):
如果你装的是mysql-client:
export PKG_CONFIG_PATH="/usr/local/opt/mysql-client/lib/pkgconfig"
如果你装的是mariadb-client:
export PKG_CONFIG_PATH="/usr/local/opt/mariadb-client/lib/pkgconfig"
如果想让这个环境变量永久生效,可以把上面的命令加到你的shell配置文件(~/.zshrc或~/.bash_profile)里,这样下次打开终端就不用再手动设置了。
第四步:安装目标包
现在就可以正常安装apache-airflow-providers-mysql或者mysqlclient了:
pip install apache-airflow-providers-mysql # 或者单独装mysqlclient的话: # pip install mysqlclient
备选方案:手动指定编译参数(如果上面的步骤没生效的话)
万一还是不行,可以直接手动指定MYSQLCLIENT_CFLAGS和MYSQLCLIENT_LDFLAGS环境变量来安装:
针对mysql-client:
export MYSQLCLIENT_CFLAGS="-I/usr/local/opt/mysql-client/include" export MYSQLCLIENT_LDFLAGS="-L/usr/local/opt/mysql-client/lib -lmysqlclient" pip install apache-airflow-providers-mysql
针对mariadb-client:
export MYSQLCLIENT_CFLAGS="-I/usr/local/opt/mariadb-client/include/mysql" export MYSQLCLIENT_LDFLAGS="-L/usr/local/opt/mariadb-client/lib -lmariadb" pip install apache-airflow-providers-mysql
这样应该就能顺利完成安装了,我当时就是这么解决的😉
备注:内容来源于stack exchange,提问作者Alastair McCormack
相关产品推荐
相关产品推荐

