python MySQL安装依赖报错的坑
0X01 问题
MySQL-python是python调用MySQL的常用库
通常安装时会遇到某些坑。
EnvironmentError: mysql_config not found
yum -y install mysql-devel
gcc报错
yum install gcc libffi-devel python-devel openssl-devel
一般这样就OK了(装了六七个机器,这样就行了)
但是,在用公司的机器装的时候,装完mysql-devel与gcc系列之后,报错
my_config.h: No such file or directory
这真是奇怪的问题,找了许久百度谷歌没有找到答案。
0X02 其他安装方式
yum安装
yum install MySQL-python
easy_install MySQL-python
对比起pip安装,yum 和 easy_install 可能会链接到原本的Python版本。
比如我的机器是centos6.6,原装版本是python2.6.6(自己后面装的python2.7),yum调用的python版本也是python2.6.6
所以用yum安装时,MySQL-python直接给装到Python2.6.6里了。
虽然python -> python2.7这类软链接都已经做了,但是安装好还是链接向python2.6.6
如果对Python版本没有2.7的要求,或者centos机器本身的python版本比较高,可以试一下。
期间装了另外的东西
下载到本机后
rz 命令上传到机器
rpm -ivh 安装
0X03 找到原因
遍地找不到原因
坐下来冷静思考
我已经装了mysql的依赖——mysql-devel了
这时候报错确实my_config.h
(百度搜索缺失了怎么办,答:装mysql-devel。我已经装了还缺失呢?答:没有这种情况)
而在折腾的过程中,查看了官方mysql-devel,里面是有my_config.h的文件的。
所以想了想,可能是公司的“陈年老源”里蕴含着宝贝的秘密。
重新在官网下载mysql-devel的rpm包
yum 卸载掉公司源安装的mysql-devel
再rpm安装正版的mysql-devel。
pip install mysql-python==1.2.5
OK成功了
吐槽:垃圾公司源,安装完东西里面还缺了个文件,太缺德了,找了一整天的原因,还没有怀疑过公司的源下载的东西不完整。
关键链接资源
- mysql-devel-5.1.73-8.el6_8.x86_64.rpm
- mysql-5.1.73-8.el6_8 RPM for x86_64
- centos6下载正版安装包
- centos6下载正版rpm包
- 后面两个链接来回查找,安装原生包,资源厅全面。
python MySQL安装依赖报错的坑的更多相关文章
- Python virtualenv安装库报错SSL: CERTIFICATE_VERIFY_FAILED
Python virtualenv安装库报错SSL: CERTIFICATE_VERIFY_FAILED 问题描述 使用pip按照virtualenv报错,如下: pip install virtua ...
- Python djangorestframework安装库报错SSL: CERTIFICATE_VERIFY_FAILED
Python djangorestframework 安装库报错SSL: CERTIFICATE_VERIFY_FAILED 问题描述 使用pip按照virtualenv报错,如下: pip inst ...
- yum 安装 依赖报错
今天使用yum安装的时候 报错: Error: Multilib version problems found. This often means that the root cause 应该是yum ...
- python pip安装模块报错 "Can't connect to HTTPS URL because the SSL module is not available."
在升级python版本为3.6之后,pip安装模块报错. 报错信息如图: 原因是系统自带的openssl版本与python3的版本不匹配,所以这里只要升级openssl版本就可以解决问题. yum - ...
- python pip安装扩展报错
1.安装tldr报错 (1)报错详情: [root@linuxnode1 ~]# pip install tldrCollecting tldr Downloading https://files.p ...
- mysql安装/启动报错汇总
2016/9/6补充 初始化报错: # /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysq ...
- npm install 安装依赖报错
npm ERR! Unexpected end of JSON input while parsing near '...2.4.8","karma":"~0. ...
- react项目运行安装依赖报错:Error: pngquant failed to build, make sure that libpng-dev is installed
安装报错之后.但是安装libpng-dev.发现找不到.通过多方查找.准备重新安装pngquant.命令如下: npm install --save-dev pngquant安装成功并运行成功
- centos 升级 python后 python-setuptools pip 安装依赖报错
解决办法: $ wget https://svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.p ...
随机推荐
- 20175316 盛茂淞 2018-2019-2 《Java程序设计》实验五 《网络安全与编程》 实验报告
20175316 盛茂淞 2018-2019-2 <Java程序设计>实验五 <网络安全与编程> 实验报告 一.实验报告封面 课程:Java程序设计 班级:1753班 姓名:盛 ...
- 如何查看USB是不是3.0版本
打开设备管理器 找到>便携设备 对应U盘,打开属性>查看详细信息>如果设备描述为Data Traveler 3.0 那么这就是3.0的U盘
- java源码 -- HashSet
概述 HashSet是基于HashMap来实现的, 底层采用HashMap的key来保存数据, 借此实现元素不重复, 因此HashSet的实现比较简单, 基本上的都是直接调用底层HashMap的相关方 ...
- Django路由配置
Django路由配置系统.视图函数 1.路由配置系统(URLconf) URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表:你就是 ...
- 1231: 删除字符串中指定的字符(Java)
WUSTOJ 1231: 删除字符串中指定的字符 题目 原题链接 Description 明天就要英语考试了,小明明正在挑灯夜战背单词.小明明发现单词很难背,背一个忘一个.经过仔细研究,小明明发现单词 ...
- Spring (1)框架
Spring第一天笔记 1. 说在前面 怎样的架构的程序,我们认为是一个优秀的架构? 我们考虑的标准:可维护性好,可扩展性好,性能. 什么叫可扩展性好? 答:就是可以做到,不断的增加代码,但是可以 ...
- Core使用SAP Web Service
.Net Core在使用SAP的Web Service会遭遇到一些错误,貌似目前并不支持SAP中的Web Service,我们需要曲线实现下调用过程: 经测试,不再需要Framework项目中转,Sy ...
- java多线程:继承Thread和实现Runable接口的区别
java中我们想要实现多线程常用的有两种方法,继承Thread 类和实现Runnable 接口,有经验的程序员都会选择实现Runnable接口 ,其主要原因有以下两点: 首先,java只能单继承,因此 ...
- requests Use body.encode('utf-8') if you want to send it encoded in UTF-8
基本环境 使用 requests 模块发送 post 请求,请求体包含中文报错 系统环境:centos7.3 python版本:python3.6.8 请求代码: // 得到中文 param_json ...
- Linux学习笔记:split切分文件并按规律命名及添加拓展名
基础知识 功能:使用 shell 的 split 可以将一个大文件分割成很多个小文件,有时文件太大处理起来不方便就需要使用到了. 在默认情况下将按照每1000行切割成一个小文件. 语法: split ...