在Heroku上安装PyODBC时找不到sql.h

sha*_*nth 41 python heroku pyodbc

我正在尝试在Heroku上安装PyODBC,但是fatal error: sql.h: No such file or directory当pip运行时我会进入日志.我该如何解决这个错误?

Fli*_*rPA 84

要跟进以下答案......

Ubuntu的示例:

sudo apt-get install unixodbc unixodbc-dev
Run Code Online (Sandbox Code Playgroud)

CentOS示例:

sudo yum install unixODBC-devel
Run Code Online (Sandbox Code Playgroud)

在Windows上:

conn = pyodbc.connect('DRIVER={SQL Server};SERVER=yourserver.yourcompany.com;DATABASE=yourdb;UID=user;PWD=password')
Run Code Online (Sandbox Code Playgroud)

在Linux上:

conn = pyodbc.connect('DRIVER={FreeTDS};SERVER=yourserver.yourcompany.com;PORT=1433;DATABASE=yourdb;UID=user;PWD=password;TDS_VERSION=7.2')
Run Code Online (Sandbox Code Playgroud)


pbh*_*ick 6

你需要unixODBC开发包.我不知道你正在使用什么发行版,但你可以google它并从源代码构建.


Mos*_*ted 5

您可以先添加Heroku构建包以预安装所需的apt包

heroku buildpacks:add --index 1 https://github.com/heroku/heroku-buildpack-apt
Run Code Online (Sandbox Code Playgroud)

Aptfile在目录根目录中也添加到存储库中

unixodbc
unixodbc-dev
python-pyodbc
libsqliteodbc
Run Code Online (Sandbox Code Playgroud)

它将在Heroku上安装您需要使用的所有内容pyodbcaioodbcpython软件包

  • 像魅力一样工作!为odbc尝试了许多其他buildpack,但是这个确实有效。感谢您提出。 (2认同)