1
votes

I've been searching all night for a solution to this, but I seem to be running into an uncommon error while trying to install psycopg2 in a virtualenv on a Flask application. I run this command:

pip install http://pypi.python.org/packages/source/p/psycopg2/psycopg2-2.4.tar.gz

This is the error:

creating build/temp.macosx-10.9-intel-2.7/psycopg

cc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -arch i386 -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-madd -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch x86_64 -arch i386 -pipe -DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.4 (dt dec pq3 ext)" -DPG_VERSION_HEX=0x090104 -DPSYCOPG_EXTENSIONS=1 -DPSYCOPG_NEW_BOOLEAN=1 -DHAVE_PQFREEMEM=1 -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I. -I/Applications/Postgres.app/Contents/MacOS/include -I/Applications/Postgres.app/Contents/MacOS/include/server -c psycopg/psycopgmodule.c -o build/temp.macosx-10.9-intel-2.7/psycopg/psycopgmodule.o

clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]

clang: note: this will be a hard error (cannot be downgraded to a warning) in the future

error: command 'cc' failed with exit status 1

---------------------------------------- Command /Users/jasdeep1/Dropbox/workspace/Printbase/venv/bin/python -c "import setuptools;file='/var/folders/9q/bg9_hgr16s7gt7gdbg8x79wr0000gn/T/pip-TbS4xF-build/setup.py';exec(compile(open(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /var/folders/9q/bg9_hgr16s7gt7gdbg8x79wr0000gn/T/pip-Yavgs4-record/install-record.txt --single-version-externally-managed --install-headers /Users/jasdeep1/Dropbox/workspace/Printbase/venv/include/site/python2.7 failed with error code 1 in /var/folders/9q/bg9_hgr16s7gt7gdbg8x79wr0000gn/T/pip-TbS4xF-build Storing complete log in /Users/jasdeep1/.pip/pip.log

Not exactly sure how to solve for this. No answers I've seen seem to address this. Any help stepping in the right direction is appreciated.

Happy to share more of the debug output, but wasn't sure how much detail is too much detail.

2

2 Answers

2
votes

You might want to install psycopg2 directly from pip -- not sure why you're installing the tarball manually (although, it should work assuming you already have libpq-dev and build-essential install ).

$ pip install -U psycopg2
0
votes

Installing: Open terminal (editor or local)

$ brew install postgresql
$ brew services start postgresql

And go to sql promp for create a db (don't leave terminal):

$ psql postgres

CREATE DATABASE .. CREATE USER GRANT ...

And Connection Sample:

def con_db():
    conn = None
    cursor = None

    try:
        conn = psycopg2.connect("host= dbname= user= password=")

        cursor = conn.cursor()
        sql_query = """select .."""
        cursor.execute(sql_query)

        # conn.commit()
        result = cursor.fetchall()  # fetchone()

    except Exception as e:
        print(e)
    finally:
        cursor.close()
        conn.close()