一、银河麒麟V10源码安装ROS1 noetic
核心过程参考这个文章,但是会有很多报错需要一一解决,网络问题清自行解决。
银河麒麟V10 源码安装编译ROS noetic操作系统_银河麒麟v10安装ros-CSDN博客文章浏览阅读398次,点赞5次,收藏3次。跳过,ROS官方不支持麒麟系统。_银河麒麟v10安装roshttps://blog.csdn.net/coolyabao/article/details/1461547221、从头安装好银河麒麟V10;不要用鱼香ROS的一键安装工具,无效;建立root账户;
2、需要源码安装python 3.9及以上,pip3工具也随之安装,这个网上搜一下就可以,跟ubuntu下安装都一样,可参考
https://zhuanlan.zhihu.com/p/534440910https://zhuanlan.zhihu.com/p/534440910
3、考虑给pip换源加快速度,参考:
银河麒麟Linux下pip换源方法 - 一缕魂https://www.yilvhun.com/1031.html需要注意,对于需要sudo安装的pip指令,也需要切换到root用户,按照以上方式运行换源才能sudo pip *** 也加速。
4、可以考虑安装virtualenv,以便后续使用,pip安装即可,网上搜一下就行。
5、pip 安装cmake,直接 sudo pip install cmake就行,可能安装的4.0.2版本
6、可以开始按照最上面那个教程开始了,期间会遇到几个问题:
(1)rosdep update 报错
ERROR: Rosdep experienced an error: Could not detect OS, tried [‘zorin’, ‘windows’, ‘nixos’, ‘clearlinux’, ‘ubuntu’, ‘slackware’, ‘rocky’, ‘rhel’, ‘raspbian’, ‘qnx’, ‘pop’, ‘osx’, ‘sailfishos’, ‘tizen’, ‘conda’, ‘oracle’, ‘opensuse’, ‘opensuse’, ‘opensuse’, ‘opensuse’, ‘opensuse’, ‘openembedded’, ‘neon’, ‘mx’, ‘mint’, ‘linaro’, ‘gentoo’, ‘funtoo’, ‘freebsd’, ‘fedora’, ‘elementary’, ‘elementary’, ‘debian’, ‘cygwin’, ‘euleros’, ‘centos’, ‘manjaro’, ‘buildroot’, ‘arch’, ‘amazon’, ‘alpine’, ‘almalinux’]
解决办法:export ROS_OS_OVERRIDE=ubuntu
然后继续rosdep update
(2)编译报错
运行:
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3 -DSETUPTOOLS_DEB_LAYOUT=OFF
报错:
Compatibility with CMake < 3.5 will be removed from a future version of CMake
参考自带提示,在最后加上-DCMAKE_POLICY_VERSION_MINIMUM=3.5 即可,也就是
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3 -DSETUPTOOLS_DEB_LAYOUT=OFF -DCMAKE_POLICY_VERSION_MINIMUM=3.5
继续编译一段时间,直到出现:
<== Finished processing package [184 of 184]: 'xacro'
7,加入bashrc,这是ros常规操作了
echo "source ~/ros_catkin_ws/install_isolated/setup.bash" >> ~/.bashrc
source ~/.bashrc
8、新开终端,roscore 测试,成功
9、测试小乌龟
可能报错:nable to create file '/run/user/1000/dconf/user': 权限不够. dconf will not work properly.
暴力解决:chmod 777 /run/user/1000/dconf
测试通过,结束。
csdn无法上传图片,就这样了。
二、银河麒麟V10 DOCKER 安装ROS2及Mobaxterm访问
补充一下关于银河麒麟V10跑ros2,经过尝试,源码安装很难搞,于是考虑用docker。
主要步骤就是安装docker,拉取ros2的docker容器,然后就是docker容器的操作,可以参考这几篇文章。
1、安装docker:
完整指南:麒麟 Kylin 系统离线安装 Docker_麒麟离线安装docker-CSDN博客
2、拉取ros2的docker容器和基本docker操作
Docker运行 ROS2 容器镜像 · 虚拟出一个 Ubuntu 20.04 环境 · 进行 ROS2开发 - suntroop - 博客园
3、银河麒麟安装MobaXterm用来访问docker
前面文章操作比较繁琐,可以自行尝试,这里给一个简单的思路,就是在银河麒麟安装wine64,然后安装mobaxterm,一台电脑就够了。
根据下面这个安装wine
银河麒麟系统V10 sp1,安装wine 9.0-技术文档-广东林泽科技股份有限公司
参考下面这个安装mobaxterm,注意不要用它安装wine的方法,如果不小心安装了,就把安装的无论wine,wine32还是wine64卸载掉。
ubuntu安装MobaXterm和WPS_ubuntu mobaxterm-CSDN博客
4、然后参考下面几个文章这个设置好docker 的ssh和用户密码
大概的思路就是:
给docker安装ssh服务(记得update docker的系统才能安装软件),修改ssh设置文件增加新用户、允许密码访问、允许root访问等等。也就是/etc/ssh/sshd_config文件中增加(可能需要安装vim)下面的文字然后重启ssh服务:
PermitRootLogin yes
PasswordAuthentication yes
AllowUsers ros2
ssh连接docker容器;docker容器设置root密码_docker容器root用户密码-CSDN博客
在Docker容器中启用SSH服务,实现外部访问的详细教程_docker 开启ssh-CSDN博客
Linux如何创建用户、新增用户、创建新用户、删除用户(adduser、deluser)(useradd、userdel)、获取用户列表、查看家目录-CSDN博客
docker的IP在docker通过ifconfig就可以找到。那么,IP,ssh服务,到root用户及密码(初始为空需要按照上述链接设置)/自定义用户和密码都有了,就可以在银河麒麟上用mobaxterm访问docker了。上述操作也可以实现外部访问,加一个端口映射而已,看你的需求。
PSS:
DOCKER其他操作