在 Mac OS X 上安装 libpq-dev
Posted
技术标签:
【中文标题】在 Mac OS X 上安装 libpq-dev【英文标题】:Install libpq-dev on Mac OS X 【发布时间】:2012-04-25 07:30:05 【问题描述】:我正在尝试在本地 Mac OS X 上使用 Postgresql 后端运行 Django。我已经使用 pip 安装了 Django:
sudo pip install Django
我已经使用其中一个二进制安装程序 here 安装了 Postgresql。
但是当我尝试安装 psycopg2 时,我收到一个错误(粘贴在下面),它找不到 pg_config。
从this question 看来我应该安装libpq-dev
,但我不确定如何安装。
我尝试使用 MacPorts 安装 libpqxx
,但没有任何效果。
如何安装 libpg-dev?还是我还缺少其他东西?
henrietta:~ $ pip install psycopg2
Downloading/unpacking psycopg2
Downloading psycopg2-2.4.5.tar.gz (719Kb): 719Kb downloaded
Running setup.py egg_info for package psycopg2
Error: pg_config executable not found.
Please add the directory containing pg_config to the PATH
or specify the full executable path with the option:
python setup.py build_ext --pg-config /path/to/pg_config build ...
or with the pg_config option in 'setup.cfg'.
Complete output from command python setup.py egg_info:
running egg_info
creating pip-egg-info/psycopg2.egg-info
writing pip-egg-info/psycopg2.egg-info/PKG-INFO
writing top-level names to pip-egg-info/psycopg2.egg-info/top_level.txt
writing dependency_links to pip-egg-info/psycopg2.egg-info/dependency_links.txt
writing manifest file 'pip-egg-info/psycopg2.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
Error: pg_config executable not found.
Please add the directory containing pg_config to the PATH
or specify the full executable path with the option:
python setup.py build_ext --pg-config /path/to/pg_config build ...
or with the pg_config option in 'setup.cfg'.
----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /Users/thomas/.pip/pip.log
【问题讨论】:
【参考方案1】:如果您只是想安装 psycopg2
以在 Mac 上运行 Django 或 Flask 等,请使用:
pip install psycopg2-binary
来自文档https://www.psycopg.org/docs/install.html
【讨论】:
【参考方案2】:使用 macports,这对我有用:
sudo port install postgresql96
sudo port select --set postgresql postgresql96
我相信这会安装所有 postgres 客户端工具和库,而 macports 有一个单独的端口用于安装服务器,即postgresql96-server
。
【讨论】:
【参考方案3】:在小牛队的 postgress.app 中,文件 pg_config
在 /Applications/Postgres.app/Contents/MacOS/bin/
中,所以我以这种方式解决了问题:
sudo PATH=$PATH:/Applications/Postgres.app/Contents/MacOS/bin/ pip install psycopg2
【讨论】:
这非常有帮助。万分感谢!要在 El Capitan 上运行,您需要使用稍微不同的路径。sudo PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.5/bin/ pip install psycopg2
【参考方案4】:
对于 OSX 10.9.2 Mavericks,这对我有用。尝试先用 brew 安装 postgres:
brew install postgresql
然后安装pg
gem install pg
【讨论】:
我必须这样做brew link postgresql@9.4 --force
以便 gem 可以找到 pg_config
二进制文件【参考方案5】:
所以我最终听从了这里的建议:
http://blog.jonypawks.net/2008/06/20/installing-psycopg2-on-os-x/
原来我确实安装了pg-config
,但我不得不四处寻找它。一旦我将它包含在路径中,一切都会顺利进行。这是该链接中的 sn-p:
PATH=$PATH:/Library/PostgresPlus/8.3/bin/ sudo easy_install psycopg2
我使用pip
而不是easy_install
,我的PostgreSQL 安装目录略有不同,但这就是要点。
【讨论】:
这对我来说很好。带有 Postgres.app 9.2.2.0 的 OSX Maverick:PATH=$PATH:/Applications/Postgres.app/Contents/MacOS/bin pip install psycopg2 使用 Postgres.app 9.3.2.0 RC2 更新 OSX Mavsudo PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.3/bin pip install psycopg2
也找不到/bin
。该目录应该有什么?
使用 Postgres 9.3 更新 OSX Mav PATH=$PATH:/Library/PostgreSQL/9.3/bin/ pip install psycopg2
【参考方案6】:
只需从源代码安装 postgres。我在 Mac OS X 上这样做。很简单:
./configure
make
sudo make install
当然,您可能需要额外的步骤,例如自动启动或设置配置选项,但我相信这仍然是在 Mac OS X 上设置最轻松的方式。
如果你出于某种原因想要避免从源代码安装,你应该寻找 psycopg2 的二进制版本,例如这里:http://www.initd.org/psycopg/download/
sudo port install py27-psycopg2
【讨论】:
以上是关于在 Mac OS X 上安装 libpq-dev的主要内容,如果未能解决你的问题,请参考以下文章