- 在ubuntu14.04上anaconda和ros共存的问题。
ros 和Anaconda 一起使用的时候,如果先安装了Anaconda,再安装ros,会报错,因此正确的联合使用方式为:先安装ros相关,后安装anaconda即可。
如此在anaconda环境外可以正常使用catkin_make命令,不会出现:
ImportError: "from catkin_pkg.package import parse_package" failed: No module named catkin_pkg.package
Make sure that you have installed "catkin_pkg", it is up to date and on the PYTHONPATH.错误。
- 在需要运行ros的Python节点时,会提示无法导入roslib等ros-python库,这是因为在anaconda环境内我们还没有安装这些库。和python版本无关,实际上是缺少必要的依赖包。
只要在需要使用ros的Python环境内执行以下两条代码即可恢复ros中Python节点的正常使用:
conda install setuptools
pip install -U rosdep rosinstall_generator wstool rosinstall six vcstools
- 如果升级pip后使用pip命令的时候提示:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX错误,
修改anaconda2/bin/python/pip文件为:
#!/home/ziqi/anaconda2/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main as _main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(_main())
即可解决pip升级导致的错误。
- 每次激活Anaconda环境需要输入一堆命令的问题
在 ~/.bashrc 中加入以下命令:
alias tf='source activate tf'
alias de='source deactivate'
此后输入tf即为输入source activate tf命令,此为为命令设置别名。如果在~/.bashrc文件直接加入“source activate tf”,则每次打开终端都会运行“source activate tf”命令,默认每次打开新终端都会激活此环境。
- 关于 ~/.bashrc 文件
~/.bashrc 文件为每次打开终端都会运行的一些命令,同理也可以将以下ROS相关命令加入到此文件。
source ~/catkin_ws/devel/setup.bash
- 安装Anaconda后无法运行conda等命令
安装Anaconda后默认不会把Anaconda安装文件夹加入到环境变量,此时运行conda 命令会提示无法找到此命令。
在 ~/.bashrc 中加入以下命令即可:
export PATH=/home/ziqi/anaconda2/bin:$PATH