无法在mac sierra上安装pyodbc或pymssql

时间:2017-09-25 06:56:30

标签: python pyodbc freetds pymssql

我正在尝试使用" pip install pyodbc"安装pyodbc或pymssql python库。和" pip安装pymssql"。但是,我不断收到以下错误消息:

pygame.event.get()

虽然我在安装过程中仍然收到以下消息,但我已经安装了freetds:

Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/private/var/folders/mz/2w0c0vc93bb2qy5rmrnxn85h0000gn/T/pip-build-upWR3q/pymssql/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/mz/2w0c0vc93bb2qy5rmrnxn85h0000gn/T/pip-DUorxp-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/var/folders/mz/2w0c0vc93bb2qy5rmrnxn85h0000gn/T/pip-build-upWR3q/pymssql/

任何人都知道为什么会这样? 我尝试了this solutionthis solutionthis solution

这是我目前的FreeTDS设置:

setup.py: Detected Darwin/Mac OS X.
        You can install FreeTDS with Homebrew or MacPorts, or by downloading
        and compiling it yourself.

        Homebrew (http://brew.sh/)
        --------------------------
        brew install freetds

        MacPorts (http://www.macports.org/)
        -----------------------------------
        sudo port install freetds

    setup.py: Not using bundled FreeTDS

我无法安装unixodbc:

                        Version: freetds v0.91.112
         freetds.conf directory: /usr/local/Cellar/freetds@0.91/0.91.112/etc
 MS db-lib source compatibility: no
    Sybase binary compatibility: no
                  Thread safety: yes
                  iconv library: yes
                    TDS version: 7.1
                          iODBC: no
                       unixodbc: no
          SSPI "trusted" logins: no
                       Kerberos: no

请帮帮忙?

1 个答案:

答案 0 :(得分:0)

我能够通过这样做来安装它:

  1. 使用brew install unixodbc
  2. 安装unixodbc
  3. 安装iodbc:http://www.iodbc.org/dataspace/doc/iodbc/wiki/iodbcWiki/Downloads
  4. 安装MySQL驱动程序:https://dev.mysql.com/downloads/connector/odbc/
  5. 使用myodbc-installer -a -d -n "MySQL ODBC 5.3 Driver" -t "Driver=/usr/local/lib/libmyodbc5w.so"
  6. 添加驱动程序
  7. 看到/Library/ODBC/odbc.ini/Library/ODBC/odbcinst.ini已更新
  8. 现在指向unixodbc的odbcinst.ini / odbc.ini文件而不是使用iodbc ini文件:
  9. sudo rm /usr/local/Cellar/unixodbc/2.3.4/etc/odbc.ini && sudo ln -s /Library/ODBC/odbc.ini /usr/local/Cellar/unixodbc/2.3.4/etc/odbc.ini
  10. sudo rm /usr/local/Cellar/unixodbc/2.3.4/etc/odbcinst.ini && sudo ln -s /Library/ODBC/odbcinst.ini /usr/local/Cellar/unixodbc/2.3.4/etc/odbcinst.ini
  11. 安装pyodbc:pip3 install pyodbc
  12. 启动python shell(python3)并检查您是否可以找到驱动程序(import pyodbc;pyodbc.drivers()
  13. 我希望这可以帮助别人。