2013-08-26 235 views
1

我试图安装pyodbc。我做了所有推荐的步骤,并不断收到此错误:在CentOS 5上安装pyodbc

python setup.py build<br> 
running build<br> 
running build_ext<br> 
building 'pyodbc' extension<br> 
gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fPIC -DPYODBC_VERSION=3.0.7 -I/usr/include/python2.4 -c /home/hyelluas/pyodbc-3.0.7/src/getdata.cpp -o build/temp.linux-x86_64-2.4/home/hyelluas/pyodbc-3.0.7/src/getdata.o -Wno-write-strings<br> 
/home/hyelluas/pyodbc-3.0.7/src/connection.h:27: error: âuintptr_tâ does not name a type 
error: command 'gcc' failed with exit status 1 

有人看到它吗?任何想法接下来要做什么?我看看文件connection.h,它对我来说很好。

+1

“我编辑过那个文件connection.h” - 可能是个坏主意。看起来你可能会搞砸了。 – user2357112

回答

0

管理摘要:此错误提示您没有将构建环境设置为正确,或者构建过程会让事情变得更糟。

详细信息:uintptr_t是ISO C99语言规范的可选部分,来自stdint.h。也就是说,我很确定GCC已经有这么多年了。我会检查你的编译器的包含路径,以确保该文件存在于其中。问题可能的来源包括:

  1. 你的编译工具没有正确配置,并编译任何东西不平凡的,如果是这样的话不应该工作。

  2. 你的编译器是古老而过时的。这似乎不太可能,因为CentOS随附..GCC 4.1.2(我认为?),我很确定这足够新。

  3. 你在这里的构建过程在某种程度上混淆了GCC,并让它在编译时不包含标准的include路径。这似乎是最有可能的选择,但我不确定什么是正确的解决方案。

希望至少能给你更多关于寻找什么的细节。

+0

谢谢你的解释,但是我该怎么办?我应该重新安装gcc吗? –

+0

嗨,我有同样的问题,这只是第一部分,你可以添加一个包括stdin.h在文件的开始,它会通过错误,但你会有其他人。底线是你至少需要Python 2.7来编译pyodbc – jameslimousin