当我尝试使用"python setup.py build install"安装 pyodbc 时,它会显示一些错误,如下所示:
gcc -pthread -fno-strict-aliasing -DNDEBUG -march=i586 -mtune=i686 -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasync-unwind-tables -g -fwrapv -fPIC -DPYODBC_VERSION=3.0.3 -I/usr/include/python2.6 -c/root/Desktop/pyodbc-3.0.3/src/sqlwchar.cpp -o build/temp.linux-i686-2.6/root/Desktop/pyodbc-3.0.3/src/sqlwchar.o -Wno-write-string在/root/Desktop/pyodbc-3.0.3/src/sqlwchar.cpp:2 中包含的文件中:/root/Desktop/pyodbc-3.0.3/src/pyodbc.h:41:20:错误:Python.h:没有这样的文件或目录/root/Desktop/pyodbc-3.0.3/src/pyodbc.h:42:25:错误:floatobject.h:没有这样的文件或目录/root/Desktop/pyodbc-3.0.3/src/pyodbc.h:43:24:错误:longobject.h:没有这样的文件或目录/root/Desktop/pyodbc-3.0.3/src/pyodbc.h:44:24:错误:boolobject.h:没有这样的文件或目录
还有几行类似的反馈,最后回复是这样的:
/root/Desktop/pyodbc-3.0.3/src/pyodbccompat.h:106:错误:在"{"标记之前应为","或";"错误:命令"gcc"失败,退出状态为 1
我已经四处寻找解决方案,每个人都说安装 python-devel 会没事的,但我在没有 python-devel 的 64 位 opensuse 上得到了这个工作,但它不适用于 32 位,而且我在互联网上的任何地方都找不到适用于 python2.6.0-8.12.2 的正确版本......所以我很困惑,请帮忙!提前谢谢。
我看不到绕过Python头文件(这是python-devel包的一部分(的方法。编译包需要它们。
也许在某处有一个 64 位版本的预编译蛋,这就是它的安装方式。
为什么你不愿意安装 python-devel?
error: Python.h: No such file or directory
我遇到了同样的错误,在安装正确版本的 python-devel 后清除了该错误,该版本确实存在于 64 位:
rpm -qa | grep python-devel
python-devel-2.6.6-36.el6.x86_64
[root@lga-vertdev01 test]# rpm -qi python-devel
Name : python-devel Relocations: (not relocatable)
Version : 2.6.6 Vendor: CentOS
Release : 36.el6 Build Date: Thu 21 Feb 2013 07:02:48 PM EST
Install Date: Tue 12 Mar 2013 08:00:53 AM EDT Build Host: c6b9.bsys.dev.centos.org
Group : Development/Libraries Source RPM: python-2.6.6-36.el6.src.rpm
Size : 466338 License: Python
Signature : RSA/SHA1, Sat 23 Feb 2013 12:39:13 PM EST, Key ID 0946fca2c105b9de
Packager : CentOS BuildSystem <http://bugs.centos.org>
URL : http://www.python.org/
Summary : The libraries and header files needed for Python development
Description :
The Python programming language's interpreter can be extended with
dynamically loaded extensions and can be embedded in other programs.
This package contains the header files and libraries needed to do
these types of tasks.
如果你想开发Python扩展,请安装python-devel。 这还需要安装 Python 包。 您可能还会想要安装包含 Python 的 python-docs 包文档。