Install psycopg2 for Anaconda Python

25,153

Solution 1

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

Solution 2

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.

Share:
25,153
user3062459
Author by

user3062459

Updated on July 09, 2022

Comments

  • user3062459
    user3062459 almost 2 years

    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