2015-12-09 62 views
0

我需要一些主要的帮助,并且有点害怕,因为我不想搞乱我的电脑!我在运行OSX 10.10.5的Macbook Air上。所以我正在跟着一个教程来帮助我学习Django。该教程并不重要。重要的是,当我这样做时,我将我的$ PYTHONPATH更改为:PythonPath和Python配置脚本

export PYTHONPATH = $ PYTHONPATH:/ usr/local/bin /../../../ Library/Frameworks/Python.framework /版本/ 2.7/lib中/ python2.7/site-packages中

然后,我有点害怕了自制的警告这里是:

警告:“配置”的脚本系统或自制目录之外存在。 ./configure脚本通常会查找* -config脚本以确定是否安装了 软件包,以及编译和链接时要使用哪些附加标志。

如果配置脚本覆盖系统或Homebrew提供的 具有相同名称的脚本,在您的路径中包含其他脚本可能会将通过 Homebrew安装的软件混淆。我们发现下面的“配置”脚本: /Library/Frameworks/Python.framework/Versions/2.7/bin/python-config /Library/Frameworks/Python.framework/Versions/2.7/bin/python2-config /Library /Frameworks/Python.framework/Versions/2.7/bin/python2.7-config

警告:您的XQuartz(2.7.7)已经过时 请安装XQuartz 2.7.8: https://xquartz.macosforge.org

警告:Python的安装在/Library/Frameworks/Python.framework

Homebrew只支持构建系统 - 提供的Python或一个 酝酿的Python。特别是,安装到/ Library的Pythons可能会干扰 与其他软件安装。

我吓坏了,我已经弄乱的东西了,因为两件事情首先与配置脚本的消息,那么这一个:

警告:Python是安装在/Library/Frameworks/Python.framework

Homebrew仅支持针对系统提供的Python或酿造的Python进行构建。特别是,安装到/ Library的Pythons可能会干扰 与其他软件安装。

我做了我的研究,这里是我找到的链接:

Repairing mysterious Python config scripts outside of the system

https://stackoverflow.com/questions/34030890/homebrew-warnings-additional-config-scripts-in-python

第一个说要清理我的道路,但我不知道怎么做,和第二没有答案。

任何帮助将不胜感激,因为我不想使用我的电脑,直到我可以确保一切都是固定的!

编辑:将使用导出$ PATH =/usr/local/bin解决我的问题?我从这个链接得到:https://apple.stackexchange.com/questions/96308/python-installation-messed-up

+0

你在哪里(以及为什么)有建议改变你的PYTHONPATH以包含'/usr/local/bin/../../../Library/Frameworks/Python.framework/Versions/2.7/lib/ python2.7 /网站packages'?还要注意,这会减少到'/ Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages',所以这个建议似乎有点缺陷(如果你从根目录上升3级,然后再下降3级)。 – Evert

+0

我问的原因是,如果你想使用自制Python,不要设置PYTHONPATH指向其他地方。如果你想使用系统Python,不要打扰Homebrew。如果你想将自制Python与系统安装的库一起使用,那么*不要*:重新安装这些用于自制Python的库。 – Evert

+0

@Evert我想我会停止在我的系统上搞乱Python,因为我之前已经得到了其他的Python安装问题。你能告诉我应该把我的$ PATH和$ PYTHONPATH指向什么吗?如果我需要清除它,我该怎么做? – CompletePythonNewbie

回答

0

根据我的第二个评论:你的PATH和PYTHONPATH取决于你在用什么。如果您为所使用的特定Python安装必要的软件包(例如,使用互补点),则无需使用PYTHONPATH;并且您可以修改PATH以包含该Python可执行文件(如果它尚未位于PATH中)。

例如,我使用Homebrew Python。我的默认路径已包含/usr/local/bin,我使用/usr/local/bin/pip为该特定Python安装软件包。没有必要使用PYTHONPATH,如果我确定我使用/usr/local/bin/python,那么一切正常。

这样做的结果是/usr/bin/python有可能比您的PATH更早发现,而不是/usr/local/bin/python。这会导致问题。请使用完整路径/usr/local/bin/python,或者设置一个别名(输入较短)。

事实上,这种方式我运行Python 2.7,3.4和3.5都在/usr/local/bin,所有都带有别名。我还有我的系统Python /usr/bin/python用于系统脚本。 (具有多个版本的棘手部分是pip:我已经制作了多个pip副本,每个副本的名称都不相同,每个副本的第一行都有不同的hash-bang,或者我可以运行/usr/local/bin/pythonx.y /usr/local/bin/pip,并使用正确的pip。)


简而言之:

  • 未设置PYTHONPATH
  • 确保/usr/local/bin包含在PATH,但这样做没有必要设置它在PATH
  • 的前面卸下家酿的Python

下,如果你想使用自制取决于:如果你想使用最新的Python版本(S),(重新)安装Python 2(3

  • ;试试吧)用Homebrew。
  • 如有必要,请为/usr/local/bin/python2.7和相应的pip作出别名。 (同上Python 3.)
  • 安装所有的pip包。或者,如果您使用setup.py以及适当的Python可执行文件。

如果你喜欢使用类似的东西,比如Anaconda Python,

如果你试图安装一些二进制包(例如,通过安装程序),你一定会搞砸的东西。不要这样做,使用适当的点子。

+0

好的,我希望我能理解你认为我应该做的事。我仍然非常了解这一点,所以我可能需要一些额外的指导。首先我不知道如何解开PYTHONPATH。我认为我应该出口它,并使它不相等。我知道如何访问我的路径,但我不知道如何正确包含/ usr/local/bin。帮助这些东西将不胜感激@Evert! – CompletePythonNewbie

+0

在我发布我的问题之前,我使用python.org网站的安装程序进行了一件事,以便可能会使此过程变得复杂。 – CompletePythonNewbie

+0

您的PYTHONPATH是afaik,从未默认设置。所以你可能应该注释掉它在你的一个登录点文件中设置的行。否则,你可以[使用'unset'](http://stackoverflow.com/questions/6877727/how-do-i-delete-unset-an-exported-environment-variable)。 – Evert