J'essaie d'installer PyODBC sur Heroku, mais j'obtiens fatal error: sql.h: No such file or directory
dans les journaux lors de l'exécution de pip. Comment puis-je corriger cette erreur?
Pour donner suite à la réponse ci-dessous ...
Exemple pour Ubuntu:
Sudo apt-get install unixodbc unixodbc-dev
Exemple pour CentOS:
Sudo yum install unixODBC-devel
Sous Windows:
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=yourserver.yourcompany.com;DATABASE=yourdb;UID=user;PWD=password')
Sous Linux:
conn = pyodbc.connect('DRIVER={FreeTDS};SERVER=yourserver.yourcompany.com;PORT=1433;DATABASE=yourdb;UID=user;PWD=password;TDS_VERSION=7.2')
Vous avez besoin du paquet de développement unixODBC. Je ne sais pas quelle distribution vous utilisez, mais vous pouvez la rechercher sur Google et la construire à partir des sources.
Vous pouvez d'abord ajouter le pack de construction Heroku pour préinstaller les packages apt requis
heroku buildpacks:add --index 1 https://github.com/heroku/heroku-buildpack-apt
Ajoutez Aptfile
à la racine de votre répertoire et au référentiel également
unixodbc
unixodbc-dev
python-pyodbc
libsqliteodbc
Il installera tout ce dont vous avez besoin pour travailler avec les packages pyodbc
ou aioodbc
de python sur Heroku
Créez un fichier nommé Aptfile dans le répertoire racine de votre projet. Le contenu du fichier doit être:
unixodbc
unixodbc-dev
python-pyodbc
Passez cette commande sur l'invite de commande/Shell:
**heroku buildpacks:add --index 1 https://github.com/heroku/heroku-buildpack-apt**
Après avoir effectué les étapes ci-dessus, validez le référentiel, puis poussez-le en utilisant
git Push heroku master