【问题标题】:How pip knows what path to include when compiles?pip 如何知道编译时要包含的路径?
【发布时间】:2017-01-19 17:25:50
【问题描述】:

我正在尝试为 64 位 python 安装带有 pip 的 MySQL-python。为此,我想使用安装在c:\Program Files\MySQL\ 下的MySQL Connector C 6.0.2,但 pip 尝试在-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include 中找到它:

C:\Users\navis\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe 
/c /nologo /Ox /MD /W3 /GS- /DNDEBUG -Dversion_info=(1,2,5,'final',1) -D__version__=1.2.5 
"-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include" 
-IC:\Python27_64\include -Id:\projects\jop\venv_jop_print_py2_64\PC /Tc_mysql.c 
/Fobuild\temp.win-amd64-2.7\Release\_mysql.obj /Zl

如何将它指向我拥有的正确包含路径?

PS:史前史 - 有时我使用 32 位 python 和 32 位 mysql-connector,所以这种情况看起来我需要清除一些东西。

【问题讨论】:

    标签: windows pip mysql-python


    【解决方案1】:

    对于 windows 和多个 include/lib 目录使用 ';' 分隔符(分号)其他操作系统可能使用 ':'(冒号)

    pip install --global-option=build_ext 
    --global-option="-IC:\Program Files\MySQL\MySQL Connector C 6.0.2\include;C:\otherDir;C:\otherDir2" 
    --global-option="-LC:\Program Files\MySQL\MySQL Connector C 6.0.2\lib\opt;C:\otherDir3"  mysql-python==1.2.5
    

    【讨论】:

      【解决方案2】:

      解决了手动指向包含路径和库路径:

      pip install --global-option=build_ext 
      --global-option="-IC:\Program Files\MySQL\MySQL Connector C 6.0.2\include" 
      --global-option="-LC:\Program Files\MySQL\MySQL Connector C 6.0.2\lib\opt"  mysql-python==1.2.5
      

      但 pip 为什么想要另一个版本仍然很有趣。

      【讨论】:

        猜你喜欢
        • 2014-02-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-04
        相关资源
        最近更新 更多