在manjaro的使用过程中,因为要经常用到python,所以安装了anaconda用于管理python环境。最开始为了图方便,于是直接在zsh打开时将$(anaconda path)/bin 放在环境变量path中,并且在最前面。但是这样的做法迎来了许多的麻烦。在需要在zsh中对一些源代码进行编译时,经常会出现系统首先检测到anaconda内部的c运行库,这些c运行库由于版本或是依赖问题,导致编译时常常报错。由于最开始很少会遇到这种问题,于是仅仅是临时修改了~/.zshrc 文件,但是后来越来越多的遇到这类问题,常常make出错,也很难定位问题,最终才发现是编译过程中使用了anaconda的c运行库出的问题,于是决定不再每次启动zsh时都导入conda环境。
在~/.zshrc 文件中,将相关的把conda路径加入path的语句删除,新建立以下函数:
1 | condainit(){ |
这样当需要在zsh中使用conda环境时,执行condainit
就可以导入conda环境。如果需要删除conda环境,即将其从path中删除,由于要删除path中的路径较为麻烦,建议重启zsh,不执行condainit
时就不会导入conda环境。