【问题标题】:Why is pip install mysql-connector fail?为什么 pip install mysql-connector 失败?
【发布时间】:2018-05-22 10:11:33
【问题描述】:

我只是尝试使用here 提供的非常简单的说明安装python-myconnector

但它失败了。这是我得到的错误:

(my_virtual_env) [my.username@my_machine ~]$ pip install mysql-connector
...
Command "/home/my.username/my_virtual_env/bin/python2.7 -u -c 
  "import setuptools, tokenize;
  __file__='/tmp/pip-build-rLJbLN/mysql-connector/setup.py';
  f=getattr(tokenize, 'open', open)(__file__);
  code=f.read().replace('\r\n', '\n');f.close();
  exec(compile(code, __file__, 'exec'))" install 
  --record /tmp/pip-mFh5Pg-record/install-record.txt 
  --single-version-externally-managed 
  --compile 
  --install-headers 
  /home/me/my_virtual_env/include/site/python2.7/mysql-connector" 
  failed with error code 1 in /tmp/pip-build-rLJbLN/mysql-connector/```

如果您需要查看完整的错误日志,可以在here 找到(但我怀疑您会看到)

为什么会发生这种情况,我该如何解决?另外,仅供参考,我在这台机器上没有 sudo 访问权限。所以这就是我将它安装到虚拟环境中的原因..

仅供参考,它似乎应该在/tmp/pip-build-rLJbLN/ 中写入一些东西,但没有,然后当它试图读取它之前应该在那里写入的内容时它会爆炸。那么如何修复这个错误呢??

我已阅读其他类似问题的其他解决方案here。但我无法让他们中的任何一个为我工作。

【问题讨论】:

  • 你安装了protobuf吗?
  • 没有。我不。我需要吗?为什么?
  • 因为是要求,作者说:mysql-connector (version >= 2.2.3) 需要Protobuf C++ (version >= 2.6.0)。这也写在完整错误日志的第 165 行

标签: python mysql mysql-connector mysql-connect


【解决方案1】:

mysql-connector明确声明它需要protobuf

mysql-connector(版本 >= 2.2.3)需要 Protobuf C++(版本 >= 2.6.0)

正如我评论的那样,您的错误日志坚持相同:

第 81、165 行:找不到 Protobuf 包含目录。

根据您的平台,遵循此protobuf C++ installaion instruction,并导出 protobuf 路径,以便pip 可以引用该路径

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-23
    • 2021-09-13
    • 2017-12-03
    • 2019-03-31
    • 2019-02-07
    • 2017-09-18
    • 1970-01-01
    相关资源
    最近更新 更多