【问题标题】:virtualenv activate_this with a different python versionvirtualenv activate_this 使用不同的 python 版本
【发布时间】:2014-12-04 22:52:40
【问题描述】:

在 activate_this.py 脚本中:

site_packages = os.path.join(base, 'lib', 'python%s' % sys.version[:3], 'site-packages')

它使用 sys.version[:3] 并且计算结果为 python2.6(系统默认值)。 但我已经安装了 python2.7 并创建了我的 virtualenv:

virtualenv -p /usr/local/bin/python2.7 venv

如何使 virtualenv 与正确版本的 python 一起工作?

创建从 /usr/bin/python 到 /usr/local/bin/python2.7 的符号链接不是解决方案,因为 CentOS 系统依赖于 python2.6。

【问题讨论】:

  • 你如何运行/使用activate_this.py
  • activate_this = '/path/to/venv/bin/activate_this.py' execfile(activate_this, dict(__file__=activate_this))
  • 您在哪个 Python 实例中运行该代码?我猜那是系统 Python?
  • @SimeonVisser 是的,它正在使用系统 python2.6 运行。我不知道如何使它与 python2.7 一起运行。能够做到这一点将解决我的问题。我使用虚拟主机,当我点击虚拟主机时,该代码就会运行。
  • 您正在运行什么服务器软件? Nginx/Apache/uwsgi?我认为最好在 在你的 shell 中激活 virtualenv 之后运行你的服务器

标签: python flask virtualenv


【解决方案1】:

让我们面对现实吧,python virtualenv 非常有限,并且有非常具体的用例。我能够做到这一点的唯一方法是针对所需的 python 版本重建 mod_wsgi

How i say the interpreter version for wsgi apache

【讨论】:

    猜你喜欢
    • 2010-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多