推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
linode
V2EX  ›  Python

为什么 Mac 下源码安装 python 但命令行读取的仍然是旧版本

  •  
  •   linode · Nov 9, 2011 · 7062 views
    This topic created in 5436 days ago, the information mentioned may be changed or developed.
    Mac OS X Lion 下,原先用官方的 dmg 安装了 2.6.6 版本
    官方放出了 2.6.7 http://www.python.org/download/releases/2.6.7/ ,但是只给出了源码包
    通过命令安装:
    1)./configure
    2)make
    3)sudo make install
    python 自动装在 /usr/local 中

    之后删除 /usr/bin 中旧的 python 符号链接:
    cd /usr/bin/
    sudo rm python pydoc pythonw

    再建立新的符号链接:
    sudo ln -s /usr/local/bin/python /usr/bin/python
    sudo ln -s /usr/local/bin/pydoc /usr/bin/pydoc
    sudo ln -s /usr/local/bin/pythonw /usr/bin/pythonw

    最后在终端中输入 python -V 发现仍然是旧的 2.6.6 版本

    紧接着打开 ~/.bash_profile 发现内容如下:
    PATH="/Library/Frameworks/Python.framework/Versions/2.6/bin:${PATH}"
    export PATH

    /Library/Frameworks/Python.framework/Versions/2.6/bin 目录下的 python 依然是旧版,请问如何更新这个路径下的版本?
    8 replies  •  1970-01-01 08:00:00 +08:00
    chenluois
        1
    chenluois  
       Nov 9, 2011
    也许
    PATH="/Library/Frameworks/Python.framework/Versions/2.6.7/bin:${PATH}" ?

    另外最新版不都 3.2.2 了么。
    linode
        2
    linode  
    OP
       Nov 9, 2011
    @chenluois 这个路径下只有 2.6 和一个指向 2.6 的 current 链接

    还没用到 3.*,只想更新好 2.6.*
    doyle
        3
    doyle  
       Nov 9, 2011
    PATH="/usr/local/bin:${PATH}" ? 或者把/Library/Frameworks/Python.framework/Versions/2.6.7/bin:去掉就行了吧
    chenluois
        4
    chenluois  
       Nov 9, 2011
    用 python2.6 -V 返回的版本号是 2.6.6 还是 2.6.7 呢?
    linode
        5
    linode  
    OP
       Nov 9, 2011
    @doyle 这个样子可以,但是这样 Python.framework/Versions/2.6 还是不能删除,否则 pydoc 什么的都用不了

    @chenluois 返回的是 2.6.6
    Livid
        6
    Livid  
    MOD
    PRO
       Nov 9, 2011
    最好是通过 MacPorts 来安装和管理 Python,这样的话你可以通过 port select 来选择当前的活跃版本。
    doyle
        7
    doyle  
       Nov 9, 2011
    @linode 呃,那把PATH="${PATH}:/Library/Frameworks/Python.framework/Versions/2.6/bin" 试试?pydoc为啥启动不了?你是不是缺少某个库?直接执行/usr/bin/pydoc不行吗?
    linode
        8
    linode  
    OP
       Nov 9, 2011
    @doyle

    把PATH="${PATH}:/Library/Frameworks/Python.framework/Versions/2.6/bin" python -V 返回的版本还是 2.6.6

    如果移除 /Library/Frameworks/Python.framework/Versions/2.6/ 这个目录,pydoc 就启动不了,提示
    -bash: /usr/bin/pydoc: /Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6: bad interpreter: No such file or directory
    直接执行 /usr/bin/pydoc 也提示一样的错误。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5071 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 06:46 · PVG 14:46 · LAX 23:46 · JFK 02:46
    ♥ Do have faith in what you're doing.