Mac OS 安装mysqlcliet 失败问题解决
简单记录 Mac OS pip 安装mysqlclient报错处理过程
系统:

python: Python 3.8.2 虚拟环境
直接安装 mysqlclient 会报错
Using cached https://files.pythonhosted.org/packages/f4/f1/3bb6f64ca7a429729413e6556b7ba5976df06019a5245a43d36032f1061e/mysqlclient-1.4.2.post1.tar.gz
ERROR: Complete output from command python setup.py egg_info:
ERROR: /bin/sh: mysql_config: command not found
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/6c/jdnqnjsx48d8qj0kwn751c580000gn/T/pip-install-bz44wlso/mysqlclient/setup.py", line 16, in <module>
metadata, options = get_config()
File "/private/var/folders/6c/jdnqnjsx48d8qj0kwn751c580000gn/T/pip-install-bz44wlso/mysqlclient/setup_posix.py", line 51, in get_config
libs = mysql_config("libs")
File "/private/var/folders/6c/jdnqnjsx48d8qj0kwn751c580000gn/T/pip-install-bz44wlso/mysqlclient/setup_posix.py", line 29, in mysql_config
raise EnvironmentError("%s not found" % (_mysql_config_path,))
OSError: mysql_config not found
报错的原因是:mysql_config not found
在网上找了一圈,解决办法:
brew install mysql
然后分步走:
- 查找mysql_config文件夹位置
sudo find / -name mysql_config,一般在/usr/local/Cellar/mysql/8.0.27/bin/mysql_config这个路径下 - 将mysql_config链接到/usr/local/bin目录下
ln -s /usr/local/Cellar/mysql/8.0.27/bin/mysql_config /usr/local/bin/mysql_config
做完这两步,就可以在终端里打印出mysql_config。输入mysql_config --version,能够输出
mysql_config -version
Usage: /usr/local/bin/mysql_config [OPTIONS]
Compiler: AppleClang 12.0.0.12000032
Options:
--cflags [-I/usr/local/Cellar/mysql/8.0.27/include/mysql ]
--cxxflags [-I/usr/local/Cellar/mysql/8.0.27/include/mysql ]
--include [-I/usr/local/Cellar/mysql/8.0.27/include/mysql]
--libs [-L/usr/local/Cellar/mysql/8.0.27/lib -lmysqlclient -lz -lzstd -lssl -lcrypto -lresolv]
--libs_r [-L/usr/local/Cellar/mysql/8.0.27/lib -lmysqlclient -lz -lzstd -lssl -lcrypto -lresolv]
--plugindir [/usr/local/Cellar/mysql/8.0.27/lib/plugin]
--socket [/tmp/mysql.sock]
--port [0]
--version [8.0.27]
--variable=VAR VAR is one of:
pkgincludedir [/usr/local/Cellar/mysql/8.0.27/include/mysql]
pkglibdir [/usr/local/Cellar/mysql/8.0.27/lib]
plugindir [/usr/local/Cellar/mysql/8.0.27/lib/plugin]
这时安装还会报错,如下:
In file included from MySQLdb/_mysql.c:29:
In file included from /usr/local/Cellar/mysql/8.0.27/include/mysql/mysql.h:45:
In file included from /Library/Developer/CommandLineTools/usr/lib/clang/12.0.0/include/stdint.h:52:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdint.h:52:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/_types.h:32:
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/cdefs.h:807:2: error: Unsupported architecture
#error Unsupported architecture
原因是 架构不支持。痛苦的尝试了一段时间后,找个一个解决办法,声明架构
export ARCHFLAGS="-arch x86_64"
安装成功:
(dev) ➜ bin pip install mysqlclient
Collecting mysqlclient
Using cached mysqlclient-2.1.0.tar.gz (87 kB)
Preparing metadata (setup.py) ... done
Building wheels for collected packages: mysqlclient
Building wheel for mysqlclient (setup.py) ... done
Created wheel for mysqlclient: filename=mysqlclient-2.1.0-cp38-cp38-macosx_10_14_x86_64.whl size=56114 sha256=4a7b05f15f6983798e57dddcee8f07a8e28e96f15f19a2800b2e9a3f657dc07e
Stored in directory: /Users/lijinkui/Library/Caches/pip/wheels/61/e7/42/9d56347e42d7ce19397c0ca050c6bef56640e18be7021ac189
Successfully built mysqlclient
Installing collected packages: mysqlclient
Successfully installed mysqlclient-2.1.0
参考链接:
https://www.jianshu.com/p/6411c14ce3f1
https://www.cnblogs.com/xwxz/p/15248092.html
Mac OS 安装mysqlcliet 失败问题解决的更多相关文章
- Mac OS安装Scrapy失败
报错: DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be re ...
- Mac os安装DVWA环境教程
Mac os安装DVWA环境教程 1.尽管Mac自带Apache和php 事实上Mac和WIN都用XAMPP一键化安装比较方便 2.解压DVWA-master 改名为dvwa移动到XAMPP的目录 3 ...
- mac OS 安装配置Nginx服务器
系统环境 安装工具 Homebrew软件包管理器 :<mac OS 安装 Homebrew软件包管理器>https://blog.csdn.net/weixin_41791279/arti ...
- <亲测好使>mac os 安装mcrypt扩展
以前安装opencart的时候倒是不需要mcrypt 这个库.但是新版本需要了.加上自己的 是mac环境.当时闲麻烦,就一直没装.这次下午就寻思给装上吧! 1.首先你要先安装xcode这个工具.不然没 ...
- Mac OS安装Windows各版本时注意事项(2014年后的Mac机相信会有这些问题)
2014年后的Mac Mini安装Windows时候,会遇上更种坑,我这几天不断失败及尝试更种版本,各有心得体会,我写下来是为了避免大家遇到像我这种问题. (2014年之前的Mac Mini是否这样, ...
- YII 框架在 MAC OS下 连接数据库失败 提示 DB connection: SQLSTATE[HY000] [2002]
作者:zccst CDbConnection failed to open the DB connection: SQLSTATE[HY000] [2002] No such file or dire ...
- Mac OS 安装Wget
没有Wget的日子是非常难过的,强大的Mac OS 下安装Wget非常简单 下载一个Wget的源码包,http://www.gnu.org/software/wget/ 安装与配置 1. 首先下载一个 ...
- Mac OS安装Scrapy
个人觉得掌握简单的爬虫知识非常有用,特别是想要从一些特定网站自动地下载一些资源或者统计一些数据,非常的有用.对于产品经理来说,如果要了解竞争产品.替代产品的价格,可以写一个爬虫脚本从各大电商网站爬取相 ...
- Mac OS安装octave出现的问题-'error:terminal type set to 'unknown'的解决'
学习Machine learning需要使用Octave语言,毕竟Andrew Ng (恩达.吴)力荐.本机系统Mac OS X EI Capitan, 其实什么系统都无所谓了,安装原理都是一样的. ...
- Python 环境搭建(Win 安装以及Mac OS 安装)
千里之行始于足下,今天我们先来学习 Python 环境搭建. 注意:本系列教程基于 Python 3.X Python 环境搭建 Win 安装 打开 Python 官网 https://www.pyt ...
随机推荐
- Java之引用传递
引用传递分析 类本身就属于引用数据类型,既然是引用数据类型,就会牵扯到内存的引用传递. 引用传递的本质:同一块堆内存空间可以被不同的栈内存所指向,也可以变更指向. 引用传递案例 先看一个应用传递的例子 ...
- this.$router 与this.$route的区别
this.$router是Vue-Router的实例,需要导航到不同路由则用this.$router.push方法 this.$route为当前路由的跳转对象,包含当前路由的name.path.que ...
- 实例讲解SpringBoot集成Dubbo的步骤及过程
首先,让我们先了解一下Spring Boot和Dubbo. Spring Boot 是一个开源的 Java Web 框架,它可以帮助开发者快速创建独立的.生产级别的 Spring 应用程序.Sprin ...
- 基于DotNetty实现自动发布 - 自动检测代码变化
前言 很抱歉没有实现上一篇的目标:一键发布,因为工作量超出了预期,本次只实现了 Git 代码变化检测 已完成的功能 解决方案的项目发现与配置 首次发布需要手动处理 自动检测代码变化并解析出待发布的文件 ...
- NVIDIA RTX4090,你能用它做什么?
都说男生是世界上最简单的动物,为什么呢?举个例子,你要给女朋友送礼,你可以选择包.口红.护肤品.化妆品等,而包的品牌和样式.口红的色号等足以让你挑得眼花缭乱.而男生不一样,如果女生选择给男生送礼,我相 ...
- [AGC038E] Gachapon
Problem Statement Snuke found a random number generator. It generates an integer between $0$ and $N- ...
- 在 JMeter 中使用 JSON 提取器提取特定条件下的值
当你需要在 JMeter 中对接收到的 JSON 响应进行处理时,JSON 提取器是一个非常有用的工具.在本文中,我们将讨论如何使用 JSON 提取器来提取特定条件下的值,以满足你的需求. 问题描述 ...
- 混合专家模型 (MoE) 详解
随着 Mixtral 8x7B (announcement, model card) 的推出,一种称为混合专家模型 (Mixed Expert Models,简称 MoEs) 的 Transforme ...
- 多维数组、Arrays类、稀疏数组、冒泡排序
多维数组 多维数组可以看成是数组的数组 比如二维数组就是一个特殊的一堆数组 其中每个元素就是一个数组. 二维数组: int a[][] = new int[2][5]; 解析:二维数组a可以看成一个两 ...
- ElasticSearch之cat nodeattrs API
命令样例如下: curl -X GET "https://localhost:9200/_cat/nodeattrs?v=true&pretty" --cacert $ES ...