Search code examples
pythonpython-2.7anacondacondapsql

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

  • 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