ros安装过程中部分包“hash校验和不符”报错解决办法
在安装ROS软件包的过程中遇到了以下报错:
E: 下载 http://cn.archive.ubuntu.com/ubuntu/pool/main/m/mesa/libgbm1_17.0.7-0ubuntu0.16.04.2_amd64.deb Hash 校验和不符 失败 E: 下载 http://cn.archive.ubuntu.com/ubuntu/pool/main/b/boost1.58/libboost-regex1.58.0_1.58.0+dfsg-5ubuntu3.1_amd64.deb Hash 校验和不符 失败 E: 下载 http://cn.archive.ubuntu.com/ubuntu/pool/universe/libe/libepsilon/libepsilon1_0.9.2-3ubuntu1_amd64.deb Hash 校验和不符 失败 E: 下载 http://cn.archive.ubuntu.com/ubuntu/pool/universe/g/gazebo/libgazebo7_7.0.0+dfsg-2_amd64.deb Hash 校验和不符 失败 E: 下载 http://cn.archive.ubuntu.com/ubuntu/pool/main/u/util-linux/uuid-dev_2.27.1-6ubuntu3.3_amd64.deb Hash 校验和不符 失败 E: 下载 http://cn.archive.ubuntu.com/ubuntu/pool/main/l/lksctp-tools/libsctp1_1.0.16+dfsg-3_amd64.deb Hash 校验和不符 失败 E: 下载 http://cn.archive.ubuntu.com/ubuntu/pool/universe/b/boost-defaults/libboost-test-dev_1.58.0.1ubuntu1_amd64.deb Hash 校验和不符 失败
因为GFW上面几个包都下载不下来,一般的解决办法是FQ,不过平时不怎么翻有点麻烦所以另辟蹊径了。
这几个包的地址跟ROS本身应该是无关的,我想起来之前ubuntu系统更新的时候也报过连接服务器超时包下载不下来的问题,大概是跟ubuntu系统更新有关的几个包被墙了。在网上找到知乎的这个问题 ubuntu14.0.更新源列表失败,Hash 校验和不符? 参考@高霄的回答。
$ sudo su $ apt-get install synaptic
然后运行synaptic更新所有可更新的包。再次安装ROS软件包
sudo apt-get install ros-jade-desktop-full
即可。