我只是尝试使用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的其他解决方案。但是我无法让他们为我工作。

最佳答案

mysql-connector明确指出它需要protobuf


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


就像我评论的那样,您的错误日志坚持如下:


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


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

关于python - 为什么pip安装mysql-connector失败?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47709703/

10-11 12:34