![](https://img-blog.csdnimg.cn/20190927151053287.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
ubuntu/ros/树莓派
ubuntu及ros介绍
朽木白露
只有最不虔诚的信徒,才会追寻上帝存在的证明
展开
-
shell脚本中使用root权限
方法一:使用expect参考博客:https://www.cnblogs.com/linuxAndMcu/p/11127787.html#_label1#!/usr/expect/bin/expect -fset timeout=5 #设置5秒超时#下面几行后面不能添加注释,否则会异常#send "exit\r" - exit命令:会退出root账号,成为普通用户spawn su - rootexpect "密码:"send "zlkj\r"send "pwd\r"#send "exi原创 2021-11-06 15:37:47 · 15897 阅读 · 1 评论 -
【操作系统】进程和线程调度
转自:https://blog.csdn.net/qq_34039868/article/details/104977470 目录 进程调度 1 主要功能和过程 2 必要机制 3 进程调度方式 3.1 非抢占方式(Nonpreemptive Mode) 3.2 抢占方式(Preemptive Mode) 4 进程调度队列模型 线程调度 1 进程切换的弊端 2 线程的引入 3 线程的调度 4 线程调度的优势 windows的线程调度 1 基于优先级的可抢占调度 2 Wind转载 2021-08-17 14:22:40 · 3739 阅读 · 0 评论 -
Linux执行.sh文件时,出现$‘\r‘: command not found错误解决方案
出现原因: 脚本是在Windows下编辑完成后上传Linux上执行的,Windows下的换行是回车符+换行符,也就是\r\n,而Linux下是换行符\n。Linux下不识别\r为回车符,所以导致每行的配置都多了个\r,因此是编码的问题。 解决方案: 方案一 sed -i ‘s/\r//’ 脚本名 方案二 yum -y install dos2unix dos2unix 脚本名 ...转载 2021-07-18 16:13:14 · 2707 阅读 · 0 评论 -
VMware虚拟机和本机无法共享剪切板的解决方法
步骤如下:1.ubuntu16.04: 软件和更新中选择阿里云镜像(没错!ubuntu桌面板并不需要手动换源!!)2.apt update 更新列表,若apt list open-vm-* 可以找到open-vm-tools为成功3.apt install open-vm-tools open-vm-tools-desktop4.验证安装方式:apt list --installed | grep vm5.vmware-user(以上全root模式总是没错的)————————————————转载 2021-07-17 20:09:51 · 6087 阅读 · 0 评论 -
windows10配置make命令
本质上来说windows是没有make命令的,而真正和Linux中make命令有相同作用的是mingw32-make。我们为了使用方便可以直接把mingw32-make改为make。但是如果你在其它的编译软件中想要使用mingw32-make的时候记得把它改成make。 这两篇教程是比较好的,两个结合着看还是挺不错的。 (https://blog.csdn.net/nicholas_liu2017/article/details/78323391) (https://blog.csdn.net/fuya转载 2020-12-04 13:27:45 · 23717 阅读 · 5 评论 -
Linux undefined reference to `cos‘
今天,在编译一段代码时,出现错误 “undefined reference to cos”但是,该文件已经包含了math.h头文件,错误原因主要是没有定义“cos”函数,或者说没有找到“cos”函数的实现,虽然我们在函数开头声明了数学函数库,但还是没有找到cos的实现,这时我们就需要指定sin函数的具体路径了。系统一些默认库的位置在/lib/下面,我们可以在编译时,加上参数"-lm",‘l’代表lib,而‘m’代表math库,这就形成了“-lm”因此,可以这样写“gcc test.c -o test转载 2020-11-07 23:34:26 · 2604 阅读 · 0 评论 -
gcc更新版本(Your C++ compiler does NOT fully support C++11)
一、源码编译安装gcc-4.9.21、下载gcc源码包wget http://ftp.gnu.org/gnu/gcc/gcc-4.9.2/gcc-4.9.2.tar.gz2、解压压缩包tar -zxvf gcc-4.9.2.tar.gz3、下载编译所需的依赖包这个步骤有两种方式完成:a) 如果Linux有网络连接,直接这样:cd gcc-4.9.2./contrib/download_prerequisitesb) 如果Linux没有网络连接(我主机和虚拟机是Host-only,不原创 2020-11-06 16:21:32 · 3878 阅读 · 0 评论 -
CMake升级安装版本3.17以上
1.前期准备 # 检查cmake版本$ cmake --version # 安装编译依赖sudo yum install -y gcc gcc-c++ build-essential autoconf libtool pkg-config 本文最新状态可查看源站链接:CMake升级安装版本3.17以上 2. 快捷安装 在Linux下, 现有系统级别的cmake版本太低,可以通过一下脚本在本地目录安装更新的cmake版本。 $ wget -q -O cmake-linux.sh http.转载 2020-11-06 16:08:01 · 2472 阅读 · 0 评论 -
Ubuntu 安装远程桌面
转自:https://blog.csdn.net/heyangyi_19940703/article/details/77994416 1.安装xrdp软件: 运行Terminal,执行以下命令: sudo apt-get -y install xfce4 xrdp vnc4server 2.安装完成,查看下相关软件包 执行命令: dpkg -L xrdp 执行命令: dpkg -L vnc4server 3.配置xfce4桌面会话文件 执行命转载 2020-10-30 13:25:25 · 5243 阅读 · 0 评论 -
动态库与静态库区别
区别:静态库和动态库最本质的区别就是:该库是否被编译进目标(程序)内部。 分别介绍: 静态(函数)库 一般扩展名为(.a或.lib),这类的函数库通常扩展名为libxxx.a或xxx.lib 。 这类库在编译的时候会直接整合到目标程序中,所以利用静态函数库编译成的文件会比较大,这类函数库最大的优点就是编译成功的可执行文件可以独立运行,而不再需要向外部要求读取函数库的内容;但是从升级难易度来看明显没有优势,如果函数库更新,需要重新编译。动态函数库 动态函数库的扩展名一般为(.so或.dll),这...转载 2020-10-18 20:36:05 · 357 阅读 · 0 评论 -
CMakeLists.txt 语法介绍与实例演练
转自:https://blog.csdn.net/afei__/article/details/81201039 一、Cmake 简介 cmake 是一个跨平台、开源的构建系统。它是一个集软件构建、测试、打包于一身的软件。它使用与平台和编译器独立的配置文件来对软件编译过程进行控制。 二、常用命令 1. 指定 cmake 的最小版本 cmake_minimum_required(VERSION 3.4.1) 这行命令是可选的,我们可以不写这句话,但在有些情况下,如果 CMakeLists转载 2020-10-18 20:05:59 · 261 阅读 · 0 评论 -
Linux编程指南
Linux源码编译的一般流程https://blog.csdn.net/qq_27825451/article/details/103392719?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allfirst_rank_v2~rank_v25-1-103392719.nonecase&utm_term=c%20%E8%AF%AD%E8%A8%80%E4%BF%AE%E6%94%B9%E6%BA%90%E7%A0%81原创 2020-10-18 15:37:52 · 270 阅读 · 0 评论 -
使用gparted工具扩充vmware UBUNTU虚拟机磁盘空间
虚拟机器用了一段时间之后,由于安装的软件越来越多,慢慢的磁盘空间就不够用了,需要扩充空间。 网上有很多方法,但个人认为对虚拟机来说最好的方法就是用gparted工具进行空间扩展,非常简便,节约很多时间。 第一步就是要去下载一个gparted的光盘镜像.iso文件 第二步关闭虚拟机,在虚拟机设置部分扩充虚拟机的磁盘空间,但这个分配的空间并没有直接分给系统用,所以还需要下面的步骤来完成 第三步把镜像文件加载到虚拟机的光盘里,并选择启动时连接 这样,启动虚拟机的时候应该会进入gparted的界面,.转载 2020-10-11 20:30:18 · 903 阅读 · 0 评论 -
CmakeLists.txt单行注释和多行注释
单行注释:使用“#”多行注释:使用“#[[ ]]”以下图为例转载 2020-10-04 15:49:02 · 4909 阅读 · 1 评论 -
/usr/bin/ld: cannot find -l**** 问题的解决办法
在ubuntu上安装软件时,经常出现这样的问题:/usr/bin/ld: cannot find -l****例如:/usr/bin/ld: cannot find -lgfortran 安装torch时出现/usr/bin/ld: cannot find -lstdc++ 安装cuda时出现……这些问题都是因为找不到相应的lib文件,以上面的例子来说就是在系统中找不到libgfortran.so、libstdc++.so文件。以libvtkproj4.so为例,我们先在系统中查找下该文件。原创 2020-09-25 22:11:18 · 11194 阅读 · 0 评论 -
Ubuntu16.04安装PCL
首先安装了一系列的库 sudo apt-get update //先更新,中文别复制 sudo apt-get install git build-essential linux-libc-dev sudo apt-get install cmake cmake-gui sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev sudo apt-get install mpi-d原创 2020-09-25 22:07:12 · 273 阅读 · 0 评论 -
tar.gz压缩,查看,解压
压缩tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gztar -czf dir.tar.gz /home/data //压缩/home/data目录下全部文件查看tar -ztvf /tmp/dir.tar.gz解压tar -xzvf file.tar.gz //解压tar.gztar -zxvf /tmp/etc.tar.gz etc/passw转载 2020-09-25 20:07:50 · 924 阅读 · 0 评论 -
ubuntu系统清理垃圾
参考:https://blog.csdn.net/kanchuan1905/article/details/74332472Ubuntu Cleaner 是一个可以简化你清理 Ubuntu 系统的工具。Ubuntu Cleaner 将删除 Ubuntu 及其衍生发行版中的以下垃圾文件:应用缓存 (浏览器缓存)缩略图缓存Apt 缓存旧的内核包的配置文件不需要的包如何安装 Ubuntu Cleaner因为开发者提供官方 PPA ,我们可以通过 PPA 轻松地将 Ubuntu Cleaner转载 2020-09-25 20:05:18 · 740 阅读 · 0 评论 -
如何在自己的服务器上搭建内网穿透服务
原理内网穿透的原理如下图所示:用户访问我们的服务器,这个服务器是有公网IP的,所以用户可以无压力访问服务器与本地电脑保持长链接,当有请求的时候,服务器将请求转发到我们的本地电脑本地电脑将响应回复给服务器服务器将响应回复给用户要搭建内网穿透,我们得完成两个任务在公网能访问的服务器上运行我们的内网穿透服务;在本地电脑上面运行内网穿透客户端。当然,你可以自己根据原理实现一套,不过我们有现成的三方开源工具,可以帮我们实现这一套功能。这个就是我们今天的主角 lanproxy。内网穿透工具比较从原创 2020-09-24 17:01:39 · 5621 阅读 · 0 评论 -
ubuntu 18.04 安装 Java 及 IDE
还可以参考:https://blog.csdn.net/qq_45467083/article/details/104064660使用 Linux 系统的绝大部分是程序员,其开发环境十分友好,很多东西只需要一条命令就能完成。因此广受开发者的喜欢,其实我感觉 linux 的做开发要比 Windows 好用的多,在 Linux 中,你根本不需要什么杀毒软件,也不会遇到在 Windows上令人崩溃的蓝屏。 装完 Ubuntu后,就是搭建环境了,对于我来说,首先要执行 “sudo -y update &转载 2020-09-24 14:56:07 · 1137 阅读 · 2 评论 -
Ubuntu 16.04 安装VSCode
一、前言 32位ubuntu安装vscode需要安装vscode的历史版本,在这个网站可以看到历史版本:[https://code.visualstudio.com/updates/v1_33](https://code.visualstudio.com/updates/v1_33)下载deb的安装包,安装过程和后文一样。参考博客:https://blog.csdn.net/qq153471503/article/details/105856621/二、安装过程 1、下载VS Code 进入VS转载 2020-09-24 12:10:47 · 3566 阅读 · 0 评论 -
ubuntu16.04运行Vins-mono
下载数据集https://www.sohu.com/a/219232053_715754TUM链接:https://pan.baidu.com/s/1nwXtGqH 密码:lsgrKITTI链接:https://pan.baidu.com/s/1htFmXDE 密码:uu20DSO链接:https://pan.baidu.com/s/1eSRmeZK 密码:6x5bMono链接:https://pan.baidu.com/s/1jKaNB3C 密码:u57rEuRoC原创 2020-09-22 18:41:15 · 585 阅读 · 0 评论 -
ubuntu16.04编译vins-mono
系统:Ubuntu16.04 LSTros版本:kinetic安装 opencv 3.4.13.1 通过脚本下载并编译压缩包为: opencv-3.4.1.tar.gz ,opencv_contrib-3.4.1.tar发发gz本教程使用脚本一次性直接下载并编译安装新建如下.sh脚本 install_opencv.sh:#!/bin/bashecho "** Install requirement"sudo apt-get updatesudo apt-get install -y bu转载 2020-09-22 16:25:36 · 1222 阅读 · 0 评论 -
ROS在虚拟机vmware上连接笔记本集成的摄像头
1、虚拟机连接到摄像头 点击虚拟机vmware的右下角摄像头标记连接到摄像头 2、在ubuntu的终端中查看usb摄像头lsusb 3、安装uvc camera功能包 sudo apt-get install ros-kinetic-uvc-camera 4、安装image相关功能包 sudo apt-get install ros-kinetic-image-*sudo apt-get install ros-kinetic-rqt-image-view 5、运行uvc..转载 2020-09-21 19:45:10 · 1601 阅读 · 1 评论 -
yaml语法及规范
文章内容: YAML语法规范;YAML文本块得使用;YAML锚点与引用;YAML存量,数据类型约定;YAML对象及数组的使用规则。 YAML简介 YAML语言的设计参考了JSON,XML和SDL等语言。YAML 强调以数据为中心,简洁易读,编写简单。 有意思的命名 YAML全称是”YAML Ain’t a Markup Language”(YAML不是一种置标语言)的递归缩写。 在开发的这种语言时,YAML 的意思其实是:”Yet Another Markup Language”(仍是一种...转载 2020-09-21 17:38:45 · 1309 阅读 · 0 评论 -
ubuntu16.04安装中文输入法并设置显示中文
参考自 :https://jingyan.baidu.com/article/bad08e1ef4b2f109c85121b7.html 原材料: ubuntu16 步骤: 1.在桌面的最左边选择设置(System Settings) 2.在设置中选择Language Support 3.在弹出的窗口选择Install/Remove Languages... 4.选择Chinese(simplified),并在Installed一栏打√,点击 Apply,在弹出的确认框中输入本用户转载 2020-09-19 17:56:02 · 9051 阅读 · 10 评论 -
Linux环境变量及source命令
source命令source命令用法:source FileName作用: 在当前bash环境下读取并执行FileName文件中的shell命令。工作中经常将要配置的环境变量写在一个文件中,例如你写个xt300.env,ENV='my envirment'echo 'env test'然后执行命令source xt300.envecho $ENV由于是只在当前shell中执行,所以source设置的环境变量只改变当前shell的环境。你新打开一个控制台,会发现它的环境变量并不会有转载 2020-09-19 15:45:58 · 1910 阅读 · 0 评论 -
3.Linux之GCC及makefile学习(入门)
文章目录一、在Linux中怎么写代码二、GCC2.1 预处理2.2 编译为汇编代码(Compilation)2.3 汇编(Assembly)2.4 连接2.5 多个程序文件的编译四、Makefile一个例子Makefile教程4.1 make 执行过程4.2 Makefile格式4.3 target4.4 prerequisites4.5 commands4.6 Makefile文件的语法一、在Linux中怎么写代码这个问题比较棘手,在网上大致查了一下,觉得最好的办法就是现在windows里面写好了,如原创 2020-08-31 13:53:06 · 386 阅读 · 0 评论 -
Linux:/etc/profile是什么时候加载
转载地址:https://zhidao.baidu.com/question/586779137.html关于登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程。在登录Linux时要执行文件的过程如下:在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ~/.bash_profile、~/.bash_login...转载 2020-04-07 19:13:50 · 2805 阅读 · 0 评论 -
树莓派设置系统中文
命令行执行sudo raspi-config然后按照图中红色部分走就行了然后 选择 如图的几个打上星号采取默认然后 就设置好了原创 2020-04-04 23:19:07 · 3207 阅读 · 4 评论 -
java去调用并执行shell脚本以及问题总结
摘要: 该文章来自阿里巴巴技术协会(ATA)精选集 背景 我们在开发过程中,大部分是java开发, 而在文本处理过程中,主要就是脚本进行开发。 java开发的特点就是我们可以很早地进行TDDL, METAQ 等等地对接; 而脚本开发的特点就是在进行批处理的时候非常方便。背景我们在开发过程中,大部分是java开发, 而在文本处理过程中,主要就是脚本进行开发。 java开发的特点就是我们可以很早...原创 2020-03-18 13:51:41 · 951 阅读 · 0 评论 -
cron和crontab命令详解
cron机制cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制crontab参数crontab -u 使用者名称-u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab-l:可以列出crontab的内容-r:可以移除crontab-e:可以使用系统预设的编辑器,开启cront...转载 2020-03-09 21:08:52 · 346 阅读 · 0 评论 -
bash脚本:12306查询余票并发送邮件提醒
百度了半天没有找到用bash脚本查询火车余票的,无奈只好自己写了一个,效果如下。脚本下载链接:#余票查询脚本#参数:$1 = # 'all':只要有票就发送邮件# 'yzw':有硬座或硬卧就发送邮件# 'yz':有硬座就发送邮件# 'yw':有硬卧就发送邮件CHECK_URL="https://www.12306.cn/kfzmpt/lcxxcx/query?pur...原创 2020-04-20 21:03:48 · 1869 阅读 · 0 评论 -
树莓派挂载u盘
原理: 在linux中,插入U盘,系统识别后,则会自动在 /dev 目录增加一个设备文件, 名为 /dev/sda1 或 sda2 或 sdb1... 然后,可以用mount命令把这个设备挂接到一个空的目录中。完成后,该目录即是这个U盘,按权限读写即可。 使用完毕,用umount命令将这个目录卸载,再取出U盘即可。在树莓派中操作如下1, 在插入U盘前,用 ls 命...转载 2020-01-30 17:57:43 · 2410 阅读 · 2 评论 -
树莓派应用2:Aria2离线下载
安装Aria2下载源代码mkdir ~/Downloadscd ~/Downloadswegt https://github.com/aria2/aria2/releases/download/release-1.31.0/aria2-1.31.0.tar.gztar zxvf aria2-1.31.0.tar.gz编译cd aria2-1.31.0/./configure...原创 2020-02-03 23:43:44 · 1489 阅读 · 0 评论 -
树莓派应用1:发送天气预报邮件
使用和风天气API用来获取天气数据:https://www.heweather.com1 注册、测试API进入和风天气网站注册,我用我的邮箱注册的:1121864253@qq.com,密码是hf1121864253。之后使用HTTP协议来先测试一下这个API(和风天气API链接:https://dev.heweather.com/docs/api/weather),我使用的是谷歌浏览器的一个...原创 2020-05-30 13:06:34 · 632 阅读 · 0 评论 -
Linux文件操作
软链接Linux以文件树的形式保存文件和目录,其中从根目录指向文件的路径就是文件或目录的硬链接,当文件的硬链接数为0时,意味着文件离开了文件树,因此将被删除。因此以下命令等价:unlink file.txt#等价于rm file.txt类似于Windows的快捷方式,Linux也有软链接,建立一个文件或目录的软链接方式如下:ln -s file.txt /home/pi/file-...原创 2020-01-22 23:03:03 · 254 阅读 · 0 评论 -
树莓派GPIO操作
树莓派的GPIO操作被抽象为文件读写,下面以一个例子来说明GPIO操作1 激活GPIO21echo 21 > /sys/class/gpio/export这个命令把字符“21”输入/sys/class/gpio/export之中, 命令执行后,/sys/class/gpio下面增加了代表GPIO21的一个目录,目录名就是gpio212 把GPIO21置于输出状态echo out ...原创 2020-01-22 21:04:32 · 1113 阅读 · 1 评论 -
linux下编译c文件成为可执行文件的实例和详细过程
示例使用gcc test.c -o hello即可编译.c文件,要执行文件需要注意./hello,如果没有./是不会执行的。详细说明参考博客:https://blog.csdn.net/haovin/article/details/92782985 0、目录一、准备C文件二、编译三、执行四、编译的四个步骤一、准备C文件在命令行模式下输入:vim hello.c进入编辑模...原创 2020-01-22 20:13:05 · 4332 阅读 · 1 评论 -
树莓派安装Tomcat
安装Tomcat首先要安装jdk,方法如下:输入如下指令,如果报错可以百度问题,我这里可以直接安装成功。sudo apt-get install openjdk-8-jre检查jdk是否安装成功: java -version接下来安装Tomcat,使用apt-get指令直接安装,当然也可以自己下载Tomcat的安装包解压,这样可以将软件安装在我们想要的目录,但这里我们采用简单的方法。...原创 2020-05-30 13:07:43 · 993 阅读 · 0 评论