如何让 kivy 在 OS X 上使用特定版本的 python?
Posted
技术标签:
【中文标题】如何让 kivy 在 OS X 上使用特定版本的 python?【英文标题】:How to make kivy use specific version of python on OS X? 【发布时间】:2015-08-14 07:28:09 【问题描述】:我在 OSX yosemite 上安装了多个版本的 python。这些都像我希望的那样工作(即我可以使用 2.7.10 而不是 3.4.x 或系统 2.5.x)。 我注意到,当我使用 kivy 运行 .py 文件时,我没有收到任何警告,但我确实收到了:
[INFO ] [Python ] v2.7.6 (default, Sep 9 2014, 15:04:36)
但是当我使用以下命令启动 IDLE 时:python
或 kivy
这两个命令都使用 2.7.10 启动 IDLE 提示符 kivy 应该使用当前的 Python 版本吗?
echo $PATH
/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/opt/local/bin:/opt/local/sbin:/opt/ local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/版本/当前/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin :/Users/subnetfile/android-sdk_r16-macosx/android-sdk-macosx/platform-tools/:/Users/subnetfile/android-sdk-macosx/android-sdk-macosx/platform-tools/:/Library/Frameworks/ Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/opt/local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/ 2.6/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
我现在想知道为什么我有所有重复的路径条目...? 我可以使用以下任何一种方式调用 Python:
python python2-32 python2.6 python2.7-config pythonw2-32 pythonw2.7-32
python-32 python2-config python2.6-config pythonw pythonw2.5
python-config python2.5 python2.7 pythonw-32 pythonw2.6
python2 python2.5-config python2.7-32 pythonw2 pythonw2.7
但是,正如我所说,当我只调用“python”时,它会根据需要调出 2.7.10。 kivy 只是使用旧版本的 Python 吗?
【问题讨论】:
你如何选择在第一段中运行哪个python(系统python不是2.5,在优胜美地10.10.3上是2.7.6)以及你是如何安装python的? @Mark Just 2.x 的二进制安装程序,3.x 的 macports。系统python曾经是2.5。我只有 2.3,2.5 作为链接,在 system/library/frameworks/python.framework/versions 中只有 2.6,2.7。 你的路径是什么,你如何选择运行哪个python @Mark 查看上面的编辑 我认为你应该首先理清你的路径:) 我会坚持一种方式——macports 或二进制。该路径将使 python 成为 2.7.10 【参考方案1】:.kv 文件通过 Finder 与 .app 捆绑包相关联。在这种情况下 Kivy.app
运行 GUI 应用程序不知道您在 bash 启动脚本中设置的 PATH,因此只能在 Apple 在操作系统中设置的路径上找到 python。在这种情况下,我认为应用程序找到 /usr/bin/python 系统提供的 python 是 2.7.6
命令行将使用您的路径(需要整理),它找到的第一个 python 是 /Library 中的那个,它将是来自 python.org 的 2.7,目前最新的是 2.7.10(我假设 ivy 脚本也找到了这个,但我不知道它的详细信息)
您的路径是在 shell 启动文件中设置的,请参阅answer 了解更多详情
【讨论】:
这是有道理的。我可以修复终端 PATH,但我可以更改 .app 包中使用的操作系统路径吗? 查看 Yosemite 下需要编辑 app bundle 或使用 launchtl 的其他问题以上是关于如何让 kivy 在 OS X 上使用特定版本的 python?的主要内容,如果未能解决你的问题,请参考以下文章
在 Mac OS X 上用于 Python 3 的 Kivy
如何在 mac os x 中安装/下载特定版本的 cassandra 分布式数据库?