Я использую Linux (2.6.18-164.15.1.el5.centos.plus) и пытаюсь установить pyodbc. Я выполняю pip install pyodbc и получаю очень длинный список ошибок, которые заканчиваются на
ошибка: команда 'gcc' завершилась неудачно со статусом выхода 1
Я заглянул в /root/.pip/pip.log и увидел следующее:
Ошибка установки: команда / usr / local / bin / python -c "import setuptools; file = '/ home / build / pyodbc / setup.py'; execfile ('/ home / build / pyodbc / setup.py')" install - -single-version-external-managed --record /tmp/pip-7MS9Vu-record/install-record.txt не удалось с кодом ошибки 1
У кого-нибудь была подобная проблема с установкой pyodbc?
sudo apt-get install python3.7-dev
Я решил свою проблему, выполнив правильные указания на pyodbc - Building wiki, в которых говорится:
источник
Добавляем еще один ответ на этот вопрос. Для выпуска Linux Debian Stretch вам потребуется установить следующие зависимости:
источник
apt-get install g++
;)Выполните следующие шаги, чтобы установить pyodbc в любой версии redhat
источник
Боролся с той же проблемой
После запуска:
sudo apt-get install unixodbc-dev
Мне удалось установить pyodbc
источник
Выполните следующие команды (проверено на centos 6.5):
источник
Я несколько раз ссылался на этот вопрос и на самом деле нашел ответ, который искал здесь: pyodbc wiki
источник
sudo apt-get install g++
после этого я смог установить pip install в свой venv. Благодаря!У меня была такая же проблема на CentOS 5.5
В дополнение к установке unixODBC-devel мне также пришлось установить gcc-c ++
источник
Простой способ установить pyodbc - использовать conda. Поскольку conda автоматически устанавливает необходимые зависимости, включая unixodbc.
conda --ugrade all
(необязательный)тогда
conda install pyodbc
он установит следующие пакеты:
libgfortran-ng: 7.2.0-hdf63c60_3 defaults mkl: 2018.0.3-1 defaults mkl_fft: 1.0.2-py36_0 conda-forge mkl_random: 1.0.1-py36_0 conda-forge numpy-base: 1.14.5-py36hdbf6ddf_0 defaults pyodbc: 4.0.17-py36_0 conda-forge unixodbc: 2.3.4-1 conda-forge
источник
Согласно официальной документации Microsoft для Ubuntu 18.04, вы должны выполнить следующие команды:
sudo su curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list apt-get update ACCEPT_EULA=Y apt-get install msodbcsql17 exit
Если вы используете python3.7, очень важно запустить:
sudo apt-get install python3.7-dev
источник
Мне все это было нужно, но мне также нужно было установить python devel:
источник
Как насчет установки pyobdc из zip-файла? Из раздела Как подключиться к Microsoft Sql Server из Ubuntu с помощью pyODBC :
источник
Я знаю, что это старый вопрос, но у сопровождающего есть
pyodbc
репозиторий GitHub. .Я также нашел очень хороший пример установки FreeTDS и настройки файлов конфигурации .
Следование инструкциям в документации GitHub всегда кажется мне лучшим вариантом. По состоянию на февраль 2018 года для CentOs7 (все варианты есть по ссылке) они говорят:
# Add the RHEL 6 library for Centos-7 of MSSQL driver. Centos7 uses RHEL-6 Libraries. sudo su curl https://packages.microsoft.com/config/rhel/6/prod.repo > /etc/yum.repos.d/mssql-release.repo exit # Uninstall if already installed Unix ODBC driver sudo yum remove unixODBC-utf16 unixODBC-utf16-devel #to avoid conflicts # Install the msodbcsql unixODBC-utf16 unixODBC-utf16-devel driver sudo ACCEPT_EULA=Y yum install msodbcsql #optional: for bcp and sqlcmd sudo ACCEPT_EULA=Y yum install mssql-tools echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc # optional: for unixODBC development headers sudo yum install unixODBC-devel # the Microsoft driver expects unixODBC to be here /usr/lib64/libodbc.so.1, so add soft links to the '.so.2' files cd /usr/lib64 sudo ln -s libodbccr.so.2 libodbccr.so.1 sudo ln -s libodbcinst.so.2 libodbcinst.so.1 sudo ln -s libodbc.so.2 libodbc.so.1 # Set the path for unixODBC export ODBCINI=/usr/local/etc/odbc.ini export ODBCSYSINI=/usr/local/etc source ~/.bashrc # Prepare a temp file for defining the DSN to your database server vi /home/user/odbcadd.txt [MyMSSQLServer] Driver = ODBC Driver 13 for SQL Server Description = My MS SQL Server Trace = No Server = 10.100.1.10 # register the SQL Server database DSN information in /etc/odbc.ini sudo odbcinst -i -s -f /home/user/odbcadd.txt -l # check the DSN installation with: odbcinst -j cat /etc/odbc.ini # should contain a section called [MyMSSQLServer] # install the python driver for database connection pip install pyodbc
источник
pip install pyodbc
, если все остальное прошло нормально, у вас будут установлены и доступны как драйвер, так и пакет. Вы бы «просто использовали» пакет, создав объект подключения и курсор, аналогично любому другому программному доступу к БД. Вы можете посмотреть их документацию за примерами.Я столкнулся с той же проблемой. Для python3.6.8 и ubuntu 16.04 ничего из вышеперечисленного мне не помогло.
sudo apt-get install python3.6-dev
Это решило мою проблему.
источник
В моем случае ( Amazon Linux AMI ) ничего из вышеперечисленного не сработало. Следующее работало (идея отсюда ):
cc1plus
. Для меня это было в/usr/libexec/gcc/x86_64-amazon-linux/4.8.5/cc1plus
. Для вас это может немного отличаться. Пытатьсяls -l /usr/libexec/gcc
найти правильное имя каталога и продолжайте.echo $PATH
(для меня это было/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin
)cc1plus
в один из каталогов в вашем PATH:sudo ln -s /PATH/TO/cc1plus /DIRinPATH/
Например, в моем случае:
sudo ln -s /usr/libexec/gcc/x86_64-amazon-linux/4.8.5/cc1plus /usr/bin/
источник
Для archlinux / manjaro:
тогда:
или же:
Вы можете обновить инструменты установки pip wheel перед установкой pyodbc (это не повлияет на установку pyodbc) также с помощью:
или же
источник
Я использовал это:
В зависимости от того, какая версия centos может изменить пакет, вы можете выполнить поиск следующим образом:
источник
Эти 2 команды из отсюда работали для меня в RHEL 8
источник