当前位置: 首页 > 面试题库 >

'pip install MySQL-python'失败,并显示'IndexError'

卜昂熙
2023-03-14
问题内容

我在使用Python 2.7(Anaconda)的OSX El Capitan。启动命令将pip install MySQL-python产生:

Collecting MySQL-python
  Using cached MySQL-python-1.2.5.zip
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/d2/gd004m2s35z5dlyz9mfn6sc40000gn/T/pip-build-FYvb_T/MySQL-python/setup.py", line 17, in <module>
        metadata, options = get_config()
      File "setup_posix.py", line 53, in get_config
        libraries = [ dequote(i[2:]) for i in libs if i.startswith(compiler_flag("l")) ]
      File "setup_posix.py", line 8, in dequote
        if s[0] in "\"'" and s[0] == s[-1]:
    IndexError: string index out of range

这些都不起作用(退出时出现相同的错误)。

  • pip install mysqlclient
  • easy_install MySQL-python

pip已是最新。我基本上尝试遵循相关问题中的所有建议,但没有成功。任何帮助表示赞赏,谢谢!


问题答案:

从此博客复制。

通过查找mysql- connector-c可能得出结论的信息,即brew安装的配置可能不正确,请打开/usr/local/bin/mysql_config脚本以修改其中的某些内容:

#Create options
Libs = "-L$pkglibdir "
Libs = "$libs -l"

变成:

#Create options
Libs = "-L$pkglibdir"
Libs = "$libs -lmysqlclient -lssl -lcrypto"

保存
然后重新安装mysql-python:

pip install mysql-python


 类似资料:
  • 但是得到一个错误: Py4JJavaError:调用o41时出错。显示字符串:组织。阿帕奇。火花SparkException:作业因阶段失败而中止:阶段1.0中的任务0失败1次,最近一次失败:阶段1.0中的任务0.0丢失(TID 1)(10.75.81.111执行器驱动程序):org。阿帕奇。火花SparkException:Python worker无法连接回。

  • 问题内容: 我想不断详细说明数据集流的行(最初由Kafka发起):基于条件,我想更新Radis哈希。这是我的代码段(是上一个命令的结果,该命令是这种类型的流:。扩展为): 我收到一个巨大的堆栈跟踪,相关部分(我认为)是这样的: 谁能解释为什么发生此异常以及如何避免?谢谢! 问题答案: Spark上下文不可序列化。 ForeachWriter的任何实现都必须可序列化,因为每个任务都将获得所提供对象的

  • 问题内容: 这是我得到的错误 我该怎么解决? 问题答案: 看来你的系统上缺少或安装程序找不到它。确保确实安装了。 例如,在上,你必须安装软件包: 也许不在你的路径中,当你自己编译mysql套件时就是这种情况。 更新:对于最新版本的(截至2018年),它是

  • 问题内容: 尝试上使用。 无论软件包如何,pip安装都会失败。例如,还会导致SSL错误。 原始安装的Python 3.4.1包含pip 1.5.6。我尝试做的第一件事是安装已经安装,它是ArcGIS附带的。python并且pip直到我安装3.4.1时才可从命令行使用。 作品。可能是因为点子搜索无法验证站点的SSL证书。 我在公司网络中,但是我们不通过代理访问Internet。 每台公司计算机(包括

  • 我有一个多项目gradle构建,Spring Boot按照默认gradle约定进行结构化。 我目前的项目是(A)将gradle从5. x升级到7.3. x,(B)使用带有Spring Boot的嵌入式Tomcat。 这是一个已经存在很多年的项目,是Spring Boot,但是传统上一直作为一个战争文件部署在Tomcat中。 我已经按照gradle迁移指南将gradle升级到7.3.3,并正确构建了

  • 问题内容: 为什么: 产生错误? 如果它刚返回就不会更合逻辑吗? 问题答案: 由于空字符串不是有效的JSON,因此返回不正确,因为它是有效的JSON。例如 返回。无效的JSON也被解析为null将是一个错误。 空字符串不是有效的JSON,两个引号是有效的JSON。这是一个重要的区别。 也就是说,包含两个引号的字符串与空字符串不同。 将正确解析(返回一个空字符串)。但 将不会。 有效的最小JSON字