UBUNTU16.04的系统安装ROS之后,自带的是Python2.7.12的版本。然后实际使用中,可能用到其他工具需要装Python3.5以上的版本。安装完之后,可能经常在编译某些工程的时候出现一些代码的库或者头文件不能找到或识别的错误,归根结底是Python版本的问题。通常安装新版本之后,你会默认的将新版本的环境变量设置为Python的路劲,导致你编译ROS下的工程时,会有或多或少的错误。因此根据实际编译使用情况尝试任意切换版本。
具体步骤如下:
1.查看系统中Python版本和安装路径
whereis python
如上图所示,系统中有2.7和3.5的两个版本。
2.查看当前系统默认Python版本
python
默认是2.7.12的版本
3.添加你想切换的Python版本到可选列表中
此时需要注意自己Python的路劲,如果是默认安装情况,通常都是在/usr/bin/python2.7这里。我系统中两个版本的Python路劲均在这个路劲下。
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2
根据自己的切换版本任意修改,最后面的数字是优先级,也就是在可选列表中的顺序。
4.查看可选列表并根据自己情况切换版本
查看切换列表中版本情况:
update-alternatives --list python
选择数字切换Python版本:
sudo update-alternatives --config python
然后选择你自己需要使用的版本输入前面的数字回车即可:
到此切换完版本,重新编译自己的工程,相关的问题解决。
参考链接:
https://blog.csdn.net/sinat_33718563/article/details/79979569