Error Installing Psycopg2 on MacOS 10.9.5
Solution 1:
I ran pip install psycopg2-binary
and it worked like charm
More info about the binary package
Solution 2:
You don't seem to have postgres installed, check how to install postgresql in your system, one of the way is
brew install postgresql
(if you use homebrew- recommended)
or download the postgres app from postgresapp.com, pg_config should come with postgres and psycopg2 is trying to find it.
Solution 3:
To install psycopg2
you need have installed server before( I have installed PostgresApp)
Run manually command including the path of pg_config
program in PATH
env variable, in my case:
export PATH=/Applications/Postgres.app/Contents/Versions/@latest/bin/:$PATH
and then run
pip3 install psycopg2
EDIT:
Check directory of pg_config
:
which pg_config
Solution 4:
OSX doesn't include PostgreSQL anymore, so you need to install it in some way to build the binary part of psycopg2 module.
I've used both brew
and port
. Installing any PostgreSQL version through one of them will enable you to build the module.
If you install Postgres in other ways, you need to check that the executable pg_config
in in your path.
You can check for pg_config
presence using the command
which -a pg_config
If you have Postgres installed and the aforementioned command doesn't return anything, you need to manually find the pg_config
executable and put its containing directory in your PATH with:
export PATH=/path/to/postgresql/bin/:$PATH
Edit:
If you already installed it through homebrew, but it is not in your path, you should check if the /usr/local/bin
directory is present in your path and add it if missing
If the directory is there, you can try to relink postgres with the following command
brew unlink postgresql && brew link postgresql
Solution 5:
If you use Docker and you do not want to install postgresql
in you host system,
you can try to use package psycopg2-binary
and use postgresql
in container.