学习无人机代码框架【第一天】---VMware 安装Ubuntu16.04时显示不全的解决方法

ros环境配置篇

    • 环境配置在vmware上安装ubantu16.04操作系统
    • 安装完成后显示界面太小解决办法
    • 其他遇到的一些ubantu问题
    • 最后一步是在ubantu16上安装ros-kinetic
    • 其他
      • 很重要的一个工具是安装vmware-tool,可以支持把外部的文件或文字传入到虚拟机中
      • 管理不同的终端的软件
      • 代码编辑器vscode
      • 安装中文输入法
        • 1.ibus简介
        • 2.安装ibus输入框架
        • 3.配置ibus的输入方式
        • 4.重启
        • 5.切换输入方式
    • 相关ros安装包的安装:
      • serial
      • ddynamic-reconfigure

环境配置在vmware上安装ubantu16.04操作系统

左手按住alt键右手鼠标往上拖动安装界面,即可显示完全内容。。。
就。。。挺无语的

安装完成后显示界面太小解决办法

修改屏幕分辨率:
https://blog.csdn.net/Dontla/article/details/120925234

其他遇到的一些ubantu问题

  1. apt未被正确安装
    当用户在Ubuntu系统下输入sudo apt时,实际上是执行一条叫做apt-get的命令。如果用户没有正确安装apt-get命令,即使输入了正确的sudo apt命令,系统也会提示找不到命令。

代码示例
sudo: apt-get: command not found

解决:

  1. apt未被正确安装
    在Ubuntu系统中,apt-get被默认安装,如果未安装,可以使用以下命令重新安装。

代码示例
sudo apt-get install apt

最后一步是在ubantu16上安装ros-kinetic

参考大佬文章,基本上很短时间就安装好了
https://blog.csdn.net/qq_45539458/article/details/106456408
(为了防止大佬文章没了,我复制过来一遍)

使用中科大的源

sudo sh -c '. /etc/lsb-release && echo "deb https://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

设置key

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

更新
sudo apt-get update
数字签名无效或者过期时参考,一般不会,注意尽量不要连校园网
https://www.cnblogs.com/lishanlei/p/10707819.html

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8C718D3B5072E1F5
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 58712A2291FA4AD5
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654

安装kinetic完整版
sudo apt-get install ros-kinetic-desktop-full

安装中断时可以

sudo apt-get update
sudo apt-get install ros-kinetic-desktop-full

和校验失败可以

 sudo dpkg --configure -asudo apt-get install ros-kinetic-desktop-full

初始化rosdep

sudo rosdep init
rosdep update

若出现ERROR

sudo gedit /etc/hosts

添加

199.232.28.133 raw.githubusercontent.com

配置环境变量

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

或者

sudo gedit  ~/.bashrc

添加source /opt/ros/kinetic/setup.bash
安装依赖项

sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

测试
三个窗口分别打开

roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key

在三个窗口打开以上命令,出现小乌龟,并可以在第三个窗口使用键盘控制乌龟移动,则成功
出现: 程序“roscore”尚未安装。 您可以使用以下命令安装:apt install python-roslaunch,参考[https://www.jianshu.com/p/bfbc833c719b],可能还是配置环境变量时有问题(https://www.jianshu.com/p/bfbc833c719b)
https://github.com/ros/catkin.git 下载kinetic-devel分支

mkdir build
cd build
cmake ..
sudo chmod +x Makefile
make -j8  
sudo make install
cd ..
python2 setup.py install

实在不行

 sudo apt-get install aptitude
sudo aptitude install python-roslaunch

不接受第一种方案,n
用第二种方案y

到这里,环境基本配置就没啥问题了

其他

安装一些比较实用的开发工具

很重要的一个工具是安装vmware-tool,可以支持把外部的文件或文字传入到虚拟机中

管理不同的终端的软件

sudo apt install terminator

常用快捷键:
Alt+Up //移动到上面的终端
Alt+Down //移动到下面的终端
Alt+Left //移动到左边的终端
Alt+Right //移动到右边的终端
Ctrl+Shift+O //水平分割终端
Ctrl+Shift+E //垂直分割终端
Ctrl+Shift+Right //在垂直分割的终端中将分割条向右移动
Ctrl+Shift+Left //在垂直分割的终端中将分割条向左移动
Ctrl+Shift+Up //在水平分割的终端中将分割条向上移动
Ctrl+Shift+Down //在水平分割的终端中将分割条向下移动
Ctrl+Shift+S //隐藏/显示滚动条
Ctrl+Shift+F //搜索
Ctrl+Shift+C //复制选中的内容到剪贴板
Ctrl+Shift+V //粘贴剪贴板的内容到此处
Ctrl+Shift+W //关闭当前终端
Ctrl+Shift+Q //退出当前窗口,当前窗口的所有终端都将被关闭
Ctrl+Shift+X //最大化显示当前终端
Ctrl+Shift+Z //最大化显示当前终端并使字体放大
Ctrl+Shift+N or Ctrl+Tab //移动到下一个终端
Ctrl+Shift+P or Ctrl+Shift+Tab //Crtl+Shift+Tab 移动到之前的一个终端
F11 //全屏开关
Ctrl+Shift+T //打开一个新的标签
Ctrl+PageDown //移动到下一个标签
Ctrl+PageUp //移动到上一个标签
Ctrl+Shift+PageDown //将当前标签与其后一个标签交换位置
Ctrl+Shift+PageUp //将当前标签与其前一个标签交换位置
Ctrl+Plus (+) //增大字体
Ctrl+Minus (-) //减小字体
Ctrl+Zero (0) //恢复字体到原始大小
Ctrl+Shift+R //重置终端状态
Ctrl+Shift+G //重置终端状态并 clear 屏幕
Super+g //绑定所有的终端,以便向一个输入能够输入到所有的终端
Super+Shift+G //解除绑定
Super+t //绑定当前标签的所有终端,向一个终端输入的内容会
自动输入到其他终端
Super+Shift+T //解除绑定
Ctrl+Shift+I //打开一个窗口,新窗口与原来的窗口使用同一个进程
Super+i //打开一个新窗口,新窗口与原来的窗口使用不同的进程

代码编辑器vscode

ubuntu16.04安装vscode遇到的code 依赖于 libnss3 (>= 2:3.30)解决:
不要用最新版的,换成2022年七月份的就可以了

安装中文输入法

使用ibus框架
参考自文章(跟了好几篇文章,只有这篇文章成功了):
http://t.csdnimg.cn/QrN4n

1.ibus简介

IBUS(英文全称为Intelligent Input Bus),是GNU/Linux和类UNIX操作系统下的以GPL协议分发源代码的开源免费多语言输入法框架。
因为它采用了总线(Bus)式的架构,所以命名为Bus。IBus支持多种输入法,如拼音输入法(包括全/简/双拼),并支持基于码表的输入法,如五笔、郑码、二笔和仓颉等输入法,是多个流行的GNU/Linux发行版(如Debian,RedHat等)的默认非英文输入法平台。

2.安装ibus输入框架
sudo apt-get install ibus ibus-pinyin
3.配置ibus的输入方式
sudo ibus-setup

默认的 “General”(常规)设置应该可以用,但是最好点击 “Input Methods”(输入法),在下拉式列表框中选择你的输入法,点击 “Add”(添加)。
在这里插入图片描述

4.重启
sudo reboot
5.切换输入方式

用组合键:

<Super>space即Windows+空格键

若有多种输入语言,可按住Windows键不动调节空格键来选择你的输入语言。

相关ros安装包的安装:

serial

作为ROS与下位机通讯的功能包,可以很方便的供我们与我们的下位机通信。
安装 ros-kinetic-serial 包

// 安装
sudo apt install ros-kinetic-serial

ddynamic-reconfigure

sudo apt-get install ros-kinetic-ddynamic-reconfigure

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/151163.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[C/C++] 数据结构 LeetCode:用队列实现栈

题目描述: 请你仅使用两个队列实现一个后入先出&#xff08;LIFO&#xff09;的栈&#xff0c;并支持普通栈的全部四种操作&#xff08;push、top、pop 和 empty&#xff09;。 实现 MyStack 类&#xff1a; void push(int x) 将元素 x 压入栈顶。int pop() 移除并返回栈顶元…

kubernetes集群编排——etcd

备份 从镜像中拷贝etcdctl二进制命令 [rootk8s1 ~]# docker run -it --rm reg.westos.org/k8s/etcd:3.5.6-0 sh 输入ctrlpq快捷键&#xff0c;把容器打入后台 获取容器id [rootk8s1 ~]# docker ps 从容器拷贝命令到本机 docker container cp c7e28b381f07:/usr/local/bin/etcdc…

最大子段和(分治法+动态规划法)

求最大子段和 此类问题通常是求数列中连续子段和的最大值&#xff0c;经典的股票问题就是考察的这个思想及拓展。 例题&#xff1a; AcWing:1054. 股票买卖 Leetcode:53. 最大子数组和 分治法O(nlogn) 此类问题时分适合采用分治思想&#xff0c;因为所有子区间 [ s t a r t …

要事第一:如何通过6个步骤确定项目的优先级

当收到很多项目请求并且每个请求都是重中之重时&#xff0c;该怎么办&#xff1f;从最易完成的开始&#xff1f;还是先解决最大的问题&#xff1f; 实际上两种做法都不对。确定项目优先级的更好方法是评估以下内容&#xff0c;而不是关注项目规模或完成时长&#xff1a; ● 每…

DBeaver连接本地MySQL

原文&#xff1a; DBeaver21.3.0安装与连接本地MySQL_dbeaver创建本地数据库_傅大胖的博客-CSDN博客 其他&#xff1a; mysql 的驱动下载地址&#xff1a; Central Repository: mysql/mysql-connector-java ​​​​​​​

三相异步电机动态数学模型及矢量控制仿真

文章目录 三相异步电机动态数学模型及矢量控制仿真1、异步电机三相方程2、坐标变换3、磁链3/2变换推导4、两相静止坐标系下的方程5、两相旋转坐标系下的方程6、以 ω-is-Ψr 为状态变量的状态方程7、矢量控制及 matlab 仿真 原文链接需要仿真的同学请关注【Qin的学习营地】 三相…

百云齐鲁 | 云轴科技ZStack成功实践精选(山东)

山东省作为我国重要的工业基地和北方地区经济发展的战略支点&#xff0c;在“十四五”规划中将数字强省建设分为数字基础设施、数字科技、数字经济、数字政府、数字社会、数字生态六大部分&#xff0c;涵盖政治、经济、民生等多个方面&#xff0c;并将大数据、云计算、人工智能…

统一身份认证平台之SSO建设

前言 上篇说道Passwordless无密码技术&#xff0c;也提到了数字时代密码管理的难度&#xff0c;其实在日常的生活中&#xff0c;很多用户也会因为忘记某些网站的登录密码而烦恼。为了方便记忆&#xff0c;很多人都在不同的站点使用相同的用户名和密码&#xff0c;虽然也可以减少…

uvm环境获取系统时间的方法和使用案例

背景&#xff1a; 有时候我们想统计一下验证环境中某个步骤总共花费了多少时间&#xff0c;有什么比较方便的方法呢&#xff0c;利用$realtime理论上也是能做到的&#xff0c;不过这个和timescale绑定起来了&#xff0c;需要手动换算成单位是秒的数&#xff0c;现在提供一种利用…

未来之路:互联网技术驱动汽车行业的创新浪潮

在互联网迅猛发展的今天&#xff0c;它的触角已延伸至各行各业&#xff0c;其中最引人注目的莫过于汽车行业。随着互联网技术的融合&#xff0c;汽车正变得越来越智能&#xff0c;预示着一场关于出行方式的革命。 首先&#xff0c;自动驾驶技术的发展正日益成熟。依托先进的传感…

josef约瑟 闭锁继电器 LB-7DG 100V 50HZ 导轨安装

LB-7型闭锁继电器 闭锁继电器LB-7导轨安装 一、用途 LB-7型闭锁继电器(以下简称继电器)用于发电厂及变电所内高压母线带电时防止和接地刀闸。 二、结构和工作原理 1、继电器按整流式原理构成&#xff0c;该继电器由变压器、电阻器、整流桥、滤波电容、极化继电器及指示灯组…

【C++初阶】STL详解(四)vector的模拟实现

本专栏内容为&#xff1a;C学习专栏&#xff0c;分为初阶和进阶两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握C。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库&…

使用Lychee搭建个人图片存储系统并进行远程访问设置实现公网访问本地私人图床

文章目录 1.前言2. Lychee网站搭建2.1. Lychee下载和安装2.2 Lychee网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 1.前言 图床作为图片集中存放的服务网站&#xff0c;可以看做是云存储的一部分&#xff0c;既可…

STM32获取最大堆栈空间

参考 stackflow相关讨论 原理 通过参考链接&#xff0c;可知探测Stack的最大深度是先在stack中填充不常用的特定值&#xff0c;然后实时检测这些值哪些发生了变化&#xff0c;变化的表示使用到了这个空间&#xff0c;如果程序完全遍历后&#xff0c;有些值还是没变&#xff…

c语言-输入输出详解

文章目录 格式化输入输出占位符printfscanf 字符串输入输出puts&#xff08;&#xff09;gets&#xff08;&#xff09; 字符输入输出putchar&#xff08;&#xff09;getchar&#xff08;&#xff09; 区别 格式化输入输出 输入输出的库函数的头文件&#xff1a; #include<…

物联网AI MicroPython学习之语法 SPI串行外设通信

学物联网&#xff0c;来万物简单IoT物联网&#xff01;&#xff01; SPI 介绍 模块功能: SPI串行外设驱动 接口说明 SPI - 构建SPI对象 函数原型&#xff1a;SPI(id, baudrate&#xff0c;polarity, phase&#xff0c;sck, mosi, miso)参数说明&#xff1a; 参数类型必选参…

内置函数和消息传递API

消息传递范式 消息函数、聚合函数与更新函数 消息函数接受一个参数 edges&#xff0c;这是一个 EdgeBatch 的实例&#xff0c; 在消息传递时&#xff0c;它被DGL在内部生成以表示一批边。edges 有 src、 dst 和 data 共3个成员属性&#xff0c; 分别用于访问源节点、目标节点…

使用Docker/K8S/Helm部署项目流程

假设项目已经开发完成&#xff0c;部署流程如下&#xff1a; 一、制作镜像&#xff1a; 1、创建nginx配置文件default.conf server {listen 80;server_name localhost; # 修改为docker服务宿主机的iplocation / {root /usr/share/nginx/html;index index.html ind…

postgresql安装fdw扩展

最近有同一个服务器不同数据库、不同服务器数据库之间的数据同步需求&#xff0c;使用了fdw 下面举例的是同一个服务器两个不同数据库的同步情况 1、安装扩展 create extension postgres_fdw; 在需要使用fdw的数据库都加上该扩展 2、创建fdw服务器 mlhbase_prd库 CREATE…

Failed to execute org.scala-tools:maven-scala-plugin:2.15.2解决

原因也不是很清楚&#xff0c;查看一个博主文章(net.alchim31.maven:scala-maven-plugin&#xff1a;maven依赖无法下载或无法编译)得到的解决方案&#xff1a; 在idea的terminal执行以下语句即可实现maven对scala代码的编译&#xff1a; mvn clean scala:compile compile pac…