我目前的状态是:
>>> virtualenv --version
1.11.6
>>> export PATH=$(getconf PATH)
>>> . ~/.bashrc
>>> echo -e "${PATH//:/\\n}"
/bin
/usr/bin
/home/jozxyqk/bin
/usr/local/cuda/bin
但在激活虚拟环境后,
>>> . env/bin/activate
>>> echo -e "${PATH//:/\\n}"
/home/jozxyqk/somepath/env/bin
/usr/local/cuda/bin
/usr/lib64/qt-3.3/bin
/usr/lib64/ccache
/usr/local/bin
/usr/bin
/usr/local/sbin
/usr/sbin
/home/jozxyqk/bin
现在/usr/local/cuda/bin
出现在/usr/bin
之前,事情开始使用真正旧版本的gcc
,因为cuda/bin
中有一个符号链接(我正在尝试到pip install
需要gcc的东西。现在在我的情况下,我可以通过删除我的符号链接来解决这个问题,但PATH
中的afaik排序对于保留非常重要。除了破坏事物,允许/usr/bin
的位置改变似乎a bit of a security issue。
这是一个错误,是否有解决方法或我做错了什么?