【问题标题】:What's with all those python* executables?所有这些 python* 可执行文件是怎么回事?
【发布时间】:2019-07-12 05:18:43
【问题描述】:

虽然我使用的是安装了 MacPorts 的 Mac,但我想这个问题可以应用于其他平台。

当我在 $PATH 中列出所有带有“python”前缀的可执行文件时,我会得到一堆结果:

//64-bit Mac Mini @work/
$ IFS=:

//64-bit Mac Mini @work/
$ find $PATH -name python\*
/opt/local/bin/python3
/opt/local/bin/python3m-config
/opt/local/bin/python3.7-config
/opt/local/bin/python2.7-config
/opt/local/bin/python3.7m
/opt/local/bin/pythonw2.7
/opt/local/bin/python3.7m-config
/opt/local/bin/python3.7
/opt/local/bin/python3-config
/opt/local/bin/python2.7
/opt/local/bin/python3m
/usr/bin/python
/usr/bin/pythonw
/usr/bin/python2.7-config
/usr/bin/pythonw2.7
/usr/bin/python-config
/usr/bin/python2.7

我知道 python[23]* 是什么,但是 python3.7m、python3m、pythonw、pythonw2.7 和那些 python*-config 是做什么的?

更新

感谢您指出可能重复的评论。然而,这并没有完全解决我的问题,因为它没有提到 python2.7 解释器上的“w”标志,也没有提到这些 *-config 程序的功能是什么。

【问题讨论】:

标签: python version executable


【解决方案1】:

existingquestions 的回答解决了我大部分的困惑。

后缀字母表示CPython实现具体构建的“ABI版本”,可以看this GitHub commit

至于 2.x 版本中的 'w' 标志,在手册页中都有说明:

pythonw -- 运行允许 GUI 的 python 脚本

...

其实从 Python 2.5 开始,普通的 python 也允许 GUI 访问,所以现在 python 和 pythonw 是可以互换的。

也可以在Bytes.com找到讨论

python*-config 程序用于构建使用 python 的程序,它有点像“pkg-config”应用程序,专门用于 python。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 2022-01-23
    • 2022-07-18
    • 1970-01-01
    • 2011-07-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多