简体   繁体   English

使用 Flask/Postgres 安装 psycopg2

[英]Installing psycopg2 using Flask/Postgres

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.我整夜都在寻找解决方案,但我似乎在尝试在 Flask 应用程序的 virtualenv 中安装 psycopg2 时遇到了一个不常见的错误。 I run this command:我运行这个命令:

pip install http://pypi.python.org/packages/source/p/psycopg2/psycopg2-2.4.tar.gz pip 安装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创建 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. 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_4dec3t="p 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 -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:错误:未知参数:'-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 clang:注意:这将是一个硬错误(不能降级为警告)在未来

error: command 'cc' failed with exit status 1错误:命令“cc”失败,退出状态为 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 ---------------------------------------- 命令 /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 失败,错误代码 1 在 /var/folders/9q/bg9_hgr16s7gt7gdbg8x79wr0000gn/T /pip-TbS4xF-build 在 /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.很高兴分享更多调试输出,但不确定有多少细节是太多细节。

您可能想直接从pip安装psycopg2 -不知道为什么要手动安装tarball(尽管,如果您已经具有libpq-devbuild-essential install,它应该可以工作)。

$ pip install -U psycopg2

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):并转到 sql promp 创建一个数据库(不要离开终端):

$ psql postgres

CREATE DATABASE .. CREATE USER GRANT ... 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()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM