【DVS模拟器(ESIM)的安装】catkin命令不存在问题

一、Linux系统

建议使用虚拟机安装Linux系统用于学习,VMware+Ubuntu配置自己的Linux系统虚拟机。因为虚拟机与宿主机有隔离,即使虚拟机系统被自己弄崩溃了也不会影响到主机,只要重装虚拟机的系统即可。

具体的配置方法网上有很多文章细致教学,可以对照安装)

二、安装ROS

要安装DVS模拟器必须安装ROS,教程同样可以看网上的文章,这里主要讲一讲我遇见的各种各样千奇百怪的ERROR!(问就是我太菜了qwq) 其实 安装ROS本身的过程十分顺利,主要的问题就出现在catkin这个指令的报错

$ catkin init ##装ESIM需要用到的一个指令

catkin:command not found ##装它的第一天卡死在这个问题上
DAY 1
Round 1 python3-catkin-tools && ros-noetic-catkin替代大法

因为直接使用下面这个语句会报有关依赖的错误

sudo apt-get install catkin

报错基本上是告诉你 depend python3-catkin-pkg(>=0.4.14-2) but it is not going to be installed

大概就是说这个包是依赖包但是你没有。没有我就试图安装/修复,于是有了以下的场景

sudo apt-get -f install  ##这是传说中解决依赖项的超级实用的语句->失败
sudo apt-get update ##接着对apt-get进行了更新
##它在某时刻还会报 Unable to correct problems,you have held broken packages
sudo apt --fix-broken install ##修复破损的安装包

总之,一通操作过后,以失败告终…

我就只能求助万能的Internet,这时,几条简短的命令吸引了我,这么简单,这么方便,谁不心动呢 ↓ ↓ ↓ \downarrow\downarrow\downarrow

sudo apt-get update
sudo apt-get install python3-catkin-tools 
##网上的教程一般都是python-catkin-tools,但是Ubuntu20.04就类似的把它改成python3,其他的包也一样

装这个包也是相当的顺利,如果你装完它,而且确保suorce过了,试一试catkin init,如果它不报错顺利产生了好看的一个表格,那么congratulations!你可以继续安装ESIM了。

而我就没有这么幸运了,除了not found 还是 not found…

那又有人说了,catkin装不上,还可以这样blablabla,我一看,好家伙真简单!

sudo apt-get install ros-noetic-catkin ##中间那个是ros的版本,Ubuntu20.04对应noetic

用上面这行代码 instead of sodo apt-get install catkin

我当场就instead了啊,安装也是顺利的很,可惜还是妹有用处,该not found 依然 command not found

至此,替代大法宣告破产 呜呜呜呜。

Round 2 暴力install法

想要暴力sudo apt-get install catkin 就必须解决依赖包的问题!

sudo apt-get install python3-catkin-pkg

结果它告诉我已经有最新版本的python3-catkin-pkg(0.4.23-100), 这就离谱,它前面还跟我说是没有这个包()这时,我发现了同道中人,他在他的文章中写道:“可能是因为版本太新,它也认为缺少依赖项,可能需要降版本”;学长也给我找了很多文章和论坛可能是版本的问题,我就重装了0.4.16-1版本的该依赖包。

激动人心的时刻来了!catkin在装了0.4.16-1版本的依赖项之后能安装成功了!!!(别高兴的太早,要是到这里就结束了我也不会有第二天的故事了sos)

大家在快乐和激动的同时,千万要警惕以下这条语句

sudo apt-get autoremove  ##自动移除不需要的包或者是移除ROS依赖项!!!!!

一旦ros依赖项被这句语句给移除了,你后面想移除/安装任何东西,甚至ros本身都不能实现了,所以,用这条命令之前,看清楚它提示将会移除哪些包,否则,只能重装系统了。(不要问我怎么知道的ಥ_ಥ)

Round3 卸载ros&重装虚拟机

因为我好像在某次使用autoremove 命令时把ros的依赖项给删掉了。于是卸载ros也没办法了,只能重装虚拟机。此时,庆幸自己用的是虚拟机而不是双系统,虚拟机正是用来给大家折腾的!

删除虚拟机要从磁盘中移除,并找到隐藏文件夹当中VMware的文件,删除它,才能保证下次安装新的虚拟机时全部恢复最初状态。

@DAY 1 Linux 初步探索 && ROS安装 && catkin报错问题解决


DAY 2
Round 1 重装虚拟机&ROS

这些按照网上的教程就可以实现,难度不高,这里不再赘述

Round 2 源码安装catkin

这一步参见《catkin命令不存在》这篇博客,可以成功安装catkin库,注意所有的python-都改成python3-即可

Round 3 安装DVS模拟器

按照文章的教程安装就可以,但是跑通demo这一步因为上不了YouTube,所以在自己主机里找一个视频共享给虚拟机,跑一下测试就可以啦(我用了冰雪奇缘哈哈哈电脑里只有这个)

其中在GitHub下代码的这一步的确会遇到报错,只要按照文章里的解决方案到GitHub里add new key就可以继续往下进行了!

之后的问题都不大啦,基本上可以很顺利的完成

只要注意一个:每打开一个终端,都要source一遍哦!!!!

@DAY 2 重装虚拟机 && 重装ROS && 装catkin库 && 跑通demo

2天艰难的安装到这里终于成功了!这篇文档不足以包含我所遇到的所有error和command not found,我查了数不清的博客和文章,总算是跑成功了demo!!!

你可能感兴趣的:(linux,ubuntu)