首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >python -即使在安装了编译后的版本

python -即使在安装了编译后的版本
EN

Stack Overflow用户
提问于 2012-05-02 04:06:06
回答 4查看 12.3K关注 0票数 10

我在windows上使用python,并试图部署到heroku。当我试图使用pip安装psycopg2时,

代码语言:javascript
复制
     pip install psycopg2 

我有错误:

找不到vcvarsall.bat

然后我发现我需要安装visual studio 2008 (或),我可以直接下载和安装编译版本,所以从这个链接下载:

http://www.lfd.uci.edu/~gohlke/pythonlibs/

我下载的文件名:piccopg2-2.4.5.win32-py2.7.‌exe

即使在安装这个之后,我也会出错:没有一个模块名为心理学2扩展。

那我还能做什么呢?

代码语言:javascript
复制
            D:\mycode\python\mysite>heroku run python manage.py syncdb
            Running python manage.py syncdb attached to terminal... up, run.1
            Traceback (most recent call last):
              File "manage.py", line 10, in <module>
                execute_from_command_line(sys.argv)
              File "/app/.heroku/venv/lib/python2.7/site-                                packages/django/core/management/__i
            nit__.py", line 443, in execute_from_command_line
                utility.execute()
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__i
            nit__.py", line 382, in execute
                self.fetch_command(subcommand).run_from_argv(self.argv)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__i
            nit__.py", line 261, in fetch_command
                klass = load_command_class(app_name, subcommand)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/__i
            nit__.py", line 69, in load_command_class
                module = import_module('%s.management.commands.%s' % (app_name, name))
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/utils/importlib.py"
            , line 35, in import_module
                __import__(name)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/commands/syncdb.py", line 8, in <module>
                from django.core.management.sql import custom_sql_for_model,                 emit_post_sync_
            signal
                              File "/app/.heroku/venv/lib/python2.7/site-packages/django/core/management/sql
            .py", line 6, in <module>
                from django.db import models
              File "/app/.heroku/venv/lib/python2.7/site-                packages/django/db/__init__.py", line 40, in <module>
                backend = load_backend(connection.settings_dict['ENGINE'])
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/__init__.py", line 34, in __getattr__
                return getattr(connections[DEFAULT_DB_ALIAS], item)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/utils.py", line92, in __getitem__
backend = load_backend(db['ENGINE'])
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/utils.py", line24, in load_backend
                return import_module('.base', backend_name)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/utils/importlib.py"
            , line 35, in import_module
                __import__(name)
              File "/app/.heroku/venv/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py", line 13, in <module>
                from django.db.backends.postgresql_psycopg2.creation import DatabaseCreation

              File "/app/.heroku/venv/lib/python2.7/site-                                packages/django/db/backends/postgre
            sql_psycopg2/creation.py", line 1, in <module>
                import psycopg2.extensions
            ImportError: No module named psycopg2.extensions

            D:\mycode\python\mysite>                            

虽然pip和easy_install都在使用vcvarsall.bat,但是安装没有工作,因为我收到了以下错误:无法找到带有msg的vcvarsall.bat:没有预先包含的匹配“doc\src_build”的直接内容

谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-05-03 22:44:42

看看http://slacy.com/blog/2010/09/python-unable-to-find-vcvarsall-bat/。似乎您需要安装来解决vcvarsall.bat问题。相当疯狂..。

票数 0
EN

Stack Overflow用户

发布于 2012-06-10 05:11:41

尽管在互联网上有一些说法,但psycopg2确实在VirtualEnv中工作。

下载赢-心理2的正确版本。通常我使用32位Python2.7,所以我得到了psycopg2-2.4.5.win32-py2.7-pg9.1.3-release.exe.

您不能将此文件安装到VirtualEnv中,但可以将.exe文件重命名为.zip,并使用类似于7-Zip的实用程序打开。您将得到一个名为“psycopg2”的文件夹和一个名为“akecopg2-2.4.5-py2.7.Eg-info”的文件。将这些文件复制到:

.\Envs\MyVirtualEnv\Lib\site-packages

这对我有用,希望它对你有用。

票数 14
EN

Stack Overflow用户

发布于 2012-05-02 05:36:20

来自此链接的二进制文件:http://www.stickpeople.com/projects/python/win-psycopg/

在settings.py中,在db设置中应该是这样的

代码语言:javascript
复制
    'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10407564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档