【问题标题】:Python 2.7.5 installation on Ubuntu, MAXREPEAT在 Ubuntu 上安装 Python 2.7.5,MAXREPEAT
【发布时间】:2013-10-25 02:01:12
【问题描述】:

这已被问过几次,但至少对我来说答案没有任何意义。我有 Ubuntu 12.04,必须将 Python 从默认(2.7.3?)升级到 2.7.5 才能获得可用于编译 modwsgi 的库。

我获得了 2.7.5 的源,配置了 --enable-shared,制作并安装了。一些过时的 sun 音频等库无法构建,但安装完成。除了它不起作用:

visti@ubuntu:~$ python
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site.py", line 548, in <module>
    main()
  File "/usr/local/lib/python2.7/site.py", line 530, in main
    known_paths = addusersitepackages(known_paths)
  File "/usr/local/lib/python2.7/site.py", line 266, in addusersitepackages
    user_site = getusersitepackages()
  File "/usr/local/lib/python2.7/site.py", line 241, in getusersitepackages
user_base = getuserbase() # this will also set USER_BASE
  File "/usr/local/lib/python2.7/site.py", line 231, in getuserbase
    USER_BASE = get_config_var('userbase')
  File "/usr/local/lib/python2.7/sysconfig.py", line 516, in get_config_var
    return get_config_vars().get(name)
  File "/usr/local/lib/python2.7/sysconfig.py", line 449, in get_config_vars
    import re
  File "/usr/local/lib/python2.7/re.py", line 105, in <module>
    import sre_compile
  File "/usr/local/lib/python2.7/sre_compile.py", line 14, in <module>
    import sre_parse
  File "/usr/local/lib/python2.7/sre_parse.py", line 17, in <module>
    from sre_constants import *
  File "/usr/local/lib/python2.7/sre_constants.py", line 18, in <module>
    from _sre import MAXREPEAT
ImportError: cannot import name MAXREPEAT

ubuntu ImportError: cannot import name MAXREPEAT 建议的解决方案是重新配置“virtualenv”,无论它是什么。 /usr/local/bin 有一个名为 virtualenv 的古老脚本,但它也尝试运行 python 并且不起作用。

有人提出这个问题可能与使用旧的 Python 模块有关,因为 MAXREPEAT 出现在 2.7.4 中。为了解决这个问题,我使用 rm -rf (/usr/bin/python*, /usr/lib/python*, /usr/local/lib/python*, /usr/local/bin/python*,确实 make clean,make,make install 到 2.7.5。

还是一样的结果。现在我不再有 Python 的工作版本了。有什么办法可以解决这个问题,或者我应该尝试重新安装 Ubuntu Python 包(如果它们有 2.7.5 可用)?

汉努

【问题讨论】:

标签: python ubuntu python-2.7


【解决方案1】:

刚刚解决了同样的问题。最终删除了整个 /usr/local/lib/python2.7 安装路径,只是为了回到以前的工作版本。

还要确保删除 /usr/local/lib/python2.7-config,然后重新安装 python。反正为我工作。

【讨论】:

    【解决方案2】:

    当您将 libpython.so 版本与 python 解释器版本混合并匹配时,通常会发生这种情况。如果核对您的安装路径没有帮助,请检查这些环境变量。 $PYTHONHOME $PYTHONINCLUDE $PYTHONLIB $PYTHONLIBSTATIC $PYTHONPATH 确保他们指向的内容也都被删除了。然后重新安装。

    您还可以尝试将 python 安装到主目录,方法是将 -prefix 变量配置为指向主目录。

    make configure -prefix=$HOME/mypython`
    

    然后确保将上述变量设置为 python 所在的新主目录。

    【讨论】:

      【解决方案3】:

      我解决此问题的方法是在我的系统中搜索 sre_constants.py 文件的其他实例。然后查看这些文件的位置是否在您的用户或系统$PATH 中被引用。如果是这样,请从您的 $PATH 中删除该位置配置。重新运行 python 看看是否修复它。

      就我而言,似乎 Python 引用了不支持 MAXREPEAT 的错误位置。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-01-21
        • 1970-01-01
        • 2023-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-17
        相关资源
        最近更新 更多