有没有办法强制conda在给定的env中使用python的系统版本(以及所有系统库)?
我的shell中默认启用了conda,这可能会有点烦人,因为如果我尝试运行系统python应用程序,它会得到一个不同版本的python到它预期的内容(python仍默认为2.7 on * buntu),往往不会运行。我希望conda的root env只是重定向到系统python install。
答案 0 :(得分:1)
您需要编辑所有用户shell运行命令(例如.bashrc文件)以将anaconda的bin目录添加到路径package rpc;
message rpc_request {
enum RpcType {GET = 0; SET = 1; QUIT = 2; }
required RpcType type = 1;
required string name = 2;
optional string value = 3; }
message rpc_reply {
optional string value = 3; }
,而在根运行命令中添加export PATH=~/anaconda/bin:$PATH
。在这两种情况下,您都可以访问export PATH=$PATH:~/anaconda/bin
命令。您可以通过键入conda
来检查将运行哪个python。您还可以使用$env python --version
检查哪些其他版本可用以及它们的优先顺序(如果另一个被删除)。当然,确保您的可执行python文件具有$type -a python
,而不是其他一些指向python可执行文件的直接路由。有关详细信息,Google BASH Shell会查找http://www.cyberciti.biz/tips/an-example-how-shell-understand-which-program-to-run-part-ii.html等查询。
答案 1 :(得分:1)
只需从python
删除~/miniconda3/bin/
符号链接即可完成此任务。
$ which python
/home/naught101/miniconda3/bin/python
$ rm /home/naught101/miniconda3/bin/python
$ which python
/usr/bin/python
$ source activate science
discarding /home/naught101/miniconda3/bin from PATH
prepending /home/naught101/miniconda3/envs/science/bin to PATH
(science)$ which python
/home/naught101/miniconda3/envs/science/bin/python
(science)$ source deactivate
discarding /home/naught101/miniconda3/envs/science/bin from PATH
$ which python
/usr/bin/python
到目前为止,这似乎并没有给我带来任何问题。不幸的是,这对~/miniconda/bin/python3
不起作用,因为conda在切换到使用相同python版本的其他env时需要它。但是,那个问题首先没有造成太多问题。
如果 导致问题,那么只需cd ~/miniconda/bin/; ln -s python3 python
(或者你在conda root env中使用的任何版本的python)就可以轻松撤消。您可能需要激活/停用env才能在PATH上恢复该版本的python。