Anaconda Python配置脚本是否会与自制软件冲突;s

Anaconda Python配置脚本是否会与自制软件冲突;s,python,homebrew,Python,Homebrew,Anaconda Python配置脚本会与自制的冲突吗?请注意,我没有在任何工作流中使用这些配置脚本,我只是想知道这些配置脚本中是否有一个会被称为“幕后”。下面的输出示例(用户名替换为“..”): 如果配置脚本覆盖提供的系统或自制,则为自制 同名脚本。我们发现了以下“配置”脚本: 显然,其中一些与一些自制安装的软件包冲突 $ ls /usr/local/bin/*-config /usr/local/bin/Magick++-config /usr/local/bin/libpng-conf

Anaconda Python配置脚本会与自制的冲突吗?请注意,我没有在任何工作流中使用这些配置脚本,我只是想知道这些配置脚本中是否有一个会被称为“幕后”。下面的输出示例(用户名替换为“..”):

如果配置脚本覆盖提供的系统或自制,则为自制 同名脚本。我们发现了以下“配置”脚本:

显然,其中一些与一些自制安装的软件包冲突

$ ls /usr/local/bin/*-config
/usr/local/bin/Magick++-config   /usr/local/bin/libpng-config
/usr/local/bin/Magick-config     /usr/local/bin/libpng16-config
/usr/local/bin/MagickCore-config /usr/local/bin/pcre-config
/usr/local/bin/MagickWand-config /usr/local/bin/pkg-config
/usr/local/bin/Wand-config       /usr/local/bin/python-config
/usr/local/bin/freetype-config   /usr/local/bin/python2-config
/usr/local/bin/gdlib-config      /usr/local/bin/python2.7-config

你完全可能不会注意到任何问题。另一方面,你可能有一些相当令人沮丧的。这完全取决于您使用什么以及您的
$PATH
是如何排序的。在
$PATH
中,自制软件将采用任何具有优先权的文件;如果另一个自制软件包需要使用自制安装的配置文件,并且它首先看到Anaconda版本,那么它不知道最好使用错误的配置文件。从某种意义上说,这就是你让它做的

我的建议是保持简单和干净。除非您有特殊的理由将Anaconda保留在
$PATH
上,否则您可能应该将其弹出并使用
alias
任何您需要的工具。或者,您可以通过自制软件安装所需的东西(如numpy),并完全消除Anaconda。(事实上,我真的会这么做。水蟒带来的东西比我有任何理由扔到我的机器上的都多。)


我不知道你的
$PATH
是什么样子,但以我的经验,保持它的简短和系统性有很多好处。

这样的冲突是完全可能的。当您使用Homebrew安装依赖Python的软件时,您希望它看到通过Homebrew安装的Python包和库,而不是Anaconda安装的Python包和库

我的解决办法是不把

export PATH=$HOME/anaconda/bin:$PATH

进入
.bashrc
。通常,您只需使用通过自制安装的Python和
pip
以及由该
pip
安装的软件包。有时,当您在开发便于使用Anaconda(
conda create-n my env
)的Python项目时,您可以临时执行
export PATH=$HOME/Anaconda/bin:$PATH
将其打开。从我收集的信息来看,与使用常规Python相比,使用Anaconda的一个重要好处是
conda create-n my env Anaconda
不会像拥有大量虚拟环境时的
virtualenv my env
那样不必要地复制包安装。如果您不介意进行某种程度的复制,您可以避免同时安装Anaconda,而只使用
virtualenv

这只有在您构建的包指定对
:python
的依赖时才是正确的,该包将把Anaconda的bin目录添加到Homebrew隔离环境中的路径中。在这种情况下,您可能会遇到冲突。大多数软件包都不会出现这种情况。
$ ls /usr/local/bin/*-config
/usr/local/bin/Magick++-config   /usr/local/bin/libpng-config
/usr/local/bin/Magick-config     /usr/local/bin/libpng16-config
/usr/local/bin/MagickCore-config /usr/local/bin/pcre-config
/usr/local/bin/MagickWand-config /usr/local/bin/pkg-config
/usr/local/bin/Wand-config       /usr/local/bin/python-config
/usr/local/bin/freetype-config   /usr/local/bin/python2-config
/usr/local/bin/gdlib-config      /usr/local/bin/python2.7-config
export PATH=$HOME/anaconda/bin:$PATH