[Solved] Install psycopg2 for Anaconda Python

I have Anaconda Python 3.4, however whenever I run older code I switch to Anaconda Python 2.7 by typing “source activate python2”. My issue is that I have psycopg2 installed for Anaconda Python 3.4, but not for Anaconda Python 2.7. When I run pip install psycopg2 (on Python 2.7) I get the following message:

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'.

I am fairly new to programming and need help in:

1. Obtaining directory containing pg_config
2. Finding the path to Anaconda Python 2.7 
3. Adding pg_config to the PATH.

After I complete these steps I should be able to pip install Install psycopg2

Solution #1:

If you have anaconda, you can sidestep some of these headaches.

You said you have the Anaconda distribution of python and a quick look at the included packages shows that psycopg2 is already there (although not in the installer). You can simply:

source activate python2
conda install psycopg2

This allows the conda installer to manage all of the binary dependencies. Also makes it easier to upgrade.

If that does not work or there are reasons for not liking that package (version issues?) then that is a different question.

Respondent: Phil Cooper

Solution #2:

You need development system package for PostgreSQL which contains header files required to compile psycopg2 extension. For my CentOS 64 bit the command to install is:

yum install postgresql-devel.x86_64

but it depends on the OS – for Ubuntu that would be apt-get install ... – the name of the package varies slightly between distros.
Steps 2 and 3 should be unnecessary after you do this.

EDIT: For Mac OS that would be just:

brew install postgresql

as written here

Respondent: ElmoVanKielmo

Solution #3:

env is the virtual environment created on Anaconda
once env is activated, type this in the terminal :

conda install -n env [package]

eg.

$ conda install -n env psycopg2

After this type python to enter the Anaconda shell, and then type:

import psycopg2

If it shows no error, it has successfully been installed.

Respondent: storm11

Solution #4:

I downloaded anaconda and looks like i have access to pip3
pip3 install psycopg2

Respondent: Monica Puerto

The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .

Leave a Reply

Your email address will not be published.