1

我很困惑。我已经在我的计算机上安装了 pyodbc,我可以使用其他 IDE 导入它,但我是 ipython 的新手。

我使用 Ananconda ,并且能够使用类似的东西安装其他库

pip install BeautifulSoup

但是当我使用 pyodbc 这样做时

pip install pyodbc

我得到错误:

error: command 'gcc' failed with exist status 1

C:\Users\jeannie.chirayu>pip install pyodbc 下载/解包 pyodbc 您正在安装一个可能不安全且无法验证的文件。pip 的未来版本将默认禁止不安全文件。下载 pyodbc-3.0.7.zip (85kB):下载了 85kB 运行 setup.py egg_info 包 pyodbc

warning: no files found matching 'tests\*'

安装收集的包: pyodbc 运行 setup.py install for pyodbc build 'pyodbc' extension C:\Anaconda\Scripts\gcc.bat -DMS_WIN64 -mdll -O -Wall -DPYODBC_VERSION=3.0.7 -IC:\Anaconda\include -IC :\Anaconda\PC -cc:\users\jeanni~1.chi\appdata\local\t emp\pip_build_jeannie.chirayu\pyodbc\src\buffer.cpp -oc:\users\jeanni~1.chi\app data\ local\temp\pip_build_jeannie.chirayu\pyodbc\src\buffer.o /Wall /wd4668 /wd4 820 /wd4711 /wd4100 /wd4127 /wd4191 gcc.exe:错误:/Wall:没有这样的文件或目录 gcc.exe:错误: /wd4668:没有这样的文件或目录 gcc.exe:错误:/wd4820:没有这样的文件或目录 gcc.exe:错误:/wd4711:没有这样的文件或目录 gcc.exe:错误:/wd4100:没有这样的文件或目录gcc.exe:错误:/wd4127:没有这样的文件或目录 gcc.exe:错误:/wd4191:No such file or directory error: command 'gcc' failed with exit status 1 Complete output from command C:\Anaconda\python.exe -c "import setuptools;__ file__='c:\users\jeanni~1.chi\appdata \local\temp\pip_build_jeannie.chirayu \pyodbc\setup.py';exec(编译(打开(file ).read().replace('\r\n', '\n'), __ file__, 'exec'))" install --record c:\users\jeanni~1.chi\appdata\local\ temp\pip- lqnyba-record\install-record.txt --single-version-externally-managed:运行安装

运行构建

运行 build_ext

构建“pyodbc”扩展

C:\Anaconda\Scripts\gcc.bat -DMS_WIN64 -mdll -O -Wall -DPYODBC_VERSION=3.0.7 -IC :\Anaconda\include -IC:\Anaconda\PC -cc:\users\jeanni~1.chi\ appdata\local\temp\ pip_build_jeannie.chirayu\pyodbc\src\buffer.cpp -oc:\users\jeanni~1.chi\appdata\local\temp\pip_build_jeannie.chirayu\pyodbc\src\buffer.o /Wall /wd4668 /wd4820 /wd4711 /wd4100 /wd4127 /wd4191

gcc.exe:错误:/Wall:没有这样的文件或目录

gcc.exe:错误:/wd4668:没有这样的文件或目录

gcc.exe:错误:/wd4820:没有这样的文件或目录

gcc.exe:错误:/wd4711:没有这样的文件或目录

gcc.exe:错误:/wd4100:没有这样的文件或目录

gcc.exe:错误:/wd4127:没有这样的文件或目录

gcc.exe:错误:/wd4191:没有这样的文件或目录

错误:命令“gcc”失败,退出状态为 1


清理... Command C:\Anaconda\python.exe -c "import setuptools; file ='c:\users\jeanni ~1.chi\appdata\local\temp\pip_build_jeannie.chirayu\pyodbc\setup.py' ;exec( compile(open( file ).read().replace('\r\n', '\n'), file , 'exec'))" install --record c:\users\jeanni~1. chi\appdata\local\temp\pip-lqnyba-record\install-rec ord.txt --single-version-externally-managed failed with error code 1 in c:\users\jeanni~1.chi\appdata\local\ temp\pip_build_jeannie.chirayu\pyodbc 将完整的日志存储在 C:\Users\j\pip\pip.log

任何建议都会有所帮助。谢谢。

4

2 回答 2

2

这很烦人。但我让它工作了。基本上,pyodbc 源代码缺少很多废话。

1)在pyodbc目录中,打开setup.py,搜索“wd4668”。

将该列表更改为如下所示:

settings['extra_compile_args'] = []

2) 在 src 目录中,创建一个名为“abc_minmax.h”的文件。在其中,输入:

#ifndef min 

#define min(a, b) ((a < b) ? a : b)
#define max(a, b) ((a > b) ? a : b)

#endif

3) 在 src 目录下的以下文件中:

cursor.h
params.h
sqlwchar.h

在顶部的其他包含附近添加以下行:

#include "abc_minmax.h"

4)最后,在文件 wrapper.h 中,在其他包含附近添加以下 2 行:

#include <Windows.h>
#include <Winreg.h>

好的,应该这样做!如果有什么不起作用,请告诉我。

于 2014-02-13T20:07:27.603 回答
0

它对 pip 安装问题没有帮助,但您可以从https://code.google.com/p/pyodbc/http://www.lfd.uci.edu/~gohlke/pythonlibs/下载 .exes

于 2013-09-27T04:06:59.570 回答