pip - Psycopg2 无法在 python 3 上安装,pip 发出 fatal error

标签 pip fedora python-3.3 psycopg2

$ yum install python3 postgresql python-devel libpqxx-devel
Loaded plugins: langpacks, refresh-packagekit
Package python3-3.3.2-8.fc20.x86_64 already installed and latest version
Package postgresql-9.3.2-2.fc20.x86_64 already installed and latest version
Package python-devel-2.7.5-9.fc20.x86_64 already installed and latest version
Package 1:libpqxx-devel-3.2-0.5.fc20.x86_64 already installed and latest version
Nothing to do

我正在尝试在我的 virtualenv 中安装 psycopg2 以将 django 与 postgresql 数据库连接。

在 Fedora 19 和 postgresql-9.2 中,pg_config 的路径是:
/usr/pgsql-9.2/bin
在 Fedora 20 中,此目录不存在。

但是 pg_config 可以在 /usr/bin/pg_config 中找到。

尝试安装 psycopg2:
 $ export PATH=$PATH:/usr/bin; pip install psycopg2
Downloading/unpacking psycopg2
  Downloading psycopg2-2.5.2.tar.gz (685kB): 685kB downloaded
  Running setup.py egg_info for package psycopg2

... -compiling output here- ...

gcc -pthread -Wno-unused-result -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.5.2 (dt dec pq3 ext)" -DPG_VERSION_HEX=0x090302 -DPSYCOPG_EXTENSIONS=1 -DPSYCOPG_NEW_BOOLEAN=1 -DHAVE_PQFREEMEM=1 -I/usr/include/python3.3m -I. -I/usr/include -I/usr/include/pgsql/server -c psycopg/psycopgmodule.c -o build/temp.linux-x86_64-3.3/psycopg/psycopgmodule.o -Wdeclaration-after-statement

In file included from psycopg/psycopgmodule.c:27:0:

./psycopg/psycopg.h:30:20: fatal error: Python.h: No such file or directory

 #include <Python.h>

                    ^

compilation terminated.

error: command 'gcc' failed with exit status 1

----------------------------------------
Cleaning up...
Command /home/flyer/.virtualenvs/p3test/bin/python3 -c "import setuptools;__file__='/home/flyer/.virtualenvs/p3test/build/psycopg2/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-mrsky4-record/install-record.txt --single-version-externally-managed --install-headers /home/flyer/.virtualenvs/p3test/include/site/python3.3 failed with error code 1 in /home/flyer/.virtualenvs/p3test/build/psycopg2
Storing complete log in /home/flyer/.pip/pip.log

我会很感激你的帮助。

最佳答案

您缺少python3包含文件

./psycopg/psycopg.h:30:20: fatal error: Python.h: No such file or directory

您可能可以在 python3-devel 包中找到它们。

关于pip - Psycopg2 无法在 python 3 上安装,pip 发出 fatal error ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21650567/

相关文章:

python - 尽管出现以下错误,我如何安装gym[box2d]?

ruby-on-rails - Linux 发行版中的 gem 与 gem 安装的优缺点?

c - Json-c示例程序编译

Python 单元测试数据提供程序

python - Virtualenv venv 失败并出现以下错误

python - R_ext/事件循环.h : No such file error while installing rpy2 using pip

python - pip 安装 : issue with the ssl certificate

c - 从不同文件传递时的指针损坏 Fedora 17

python - 如何将图像插入按钮?

python - Ipython qtconsole 找不到已安装的 PyQt (Homebrew)