linux
zhubaohua_bupt
这个作者很懒,什么都没留下…
展开
-
学习linux之 cmake(1)
一个高级程序从编写到被执行会经历哪些过程呢?这和很简单,了解编译原理的同学都知道,高级程序最终是要被转化成机器理解的机器代码的,这样才能被机器理解执行。这个过程可以粗略的分为 源代码(编译)-->目标代码(链接)--->可执行程序在IDE环境下开发软件,我们只需编写好源文件、头文件、告诉IDE我们依赖的第三方头文件路径、库文件全路径,然后剩下的就交给IDE来完成这个所原创 2016-10-09 09:06:20 · 877 阅读 · 0 评论 -
跟我一起学习Makefile
概述什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写mak转载 2016-12-29 14:24:44 · 427 阅读 · 0 评论 -
REMODE+ORBSLAM运行配置(2) REMODE和编译后的ORB ros工程利用节点实现通讯
将ORB编译成ROS工程后,就可以利用ROS的节点通信实现ORB和REMODE的数据传输。步骤:1 仿照SVO-REMODE的编译方式。安装googletest 和rpg_open_remode至~/catkin_ws/src 目录下。2 修改 ORB的主函数,以便发送数据。2.1 加入头文件#include #include #include//以上几个头文件是从原创 2017-01-03 09:16:49 · 2646 阅读 · 1 评论 -
REMODE+ORBSLAM运行配置(1) 把ORB编译成ROS工程
原版的ORBSLAM是一个cmake工程,由于项目的需要,我们要在其他ROS工程(简称A)和ORB工程进行通讯,即需要将这两个工程联编,这就有两个办法:方法一:把A工程修改成一个cmake工程,然后和ORB联编,利用多线程完成通信。方法二:把ORB修改成ROS工程,编程成一个节点,和A工程利用ros节点进行通信。权衡了一下修改的复杂程度以及考虑到ROS的优点,选择了方案二。原创 2016-12-27 11:49:43 · 2131 阅读 · 2 评论 -
linux 常用命令全称
su:Swith user 切换用户,切换到root用户cat: Concatenate 串联uname: Unix name 系统名称df: Disk free 空余硬盘du: Disk usage 硬盘使用率chown: Change owner 改变所有者chgrp: Change group 改变用户组ps:Process Status 进程状态t转载 2017-12-07 08:40:40 · 389 阅读 · 0 评论 -
git 命令行最基本的使用
一1克隆代码:git clone [仓库地址.git]2进入克隆下来的仓库目录修改代码(维护代码) --本地3各种修改后,git diff 或 git status 查看差异,会显示刚才的修改。--本地4初次提交需配置个人信息邮箱:git config --global user.email "邮箱名"名字:git config --global us...原创 2018-01-25 15:59:37 · 330 阅读 · 0 评论 -
室外无人机用自己的相机采图集之环境配置
工具:1 无人机2在linux下已经安装SSH的前提下,Bitvise 是一款非常方便的Linux远程登录软件,支持图形界面。百度安装Bitvise 后,简单的配置如http://blog.sina.com.cn/s/blog_7cb52fa80102ve3e.html。原创 2017-06-12 15:41:56 · 749 阅读 · 0 评论 -
linux下echo命令详解
linux下echo命令详解linux的echo命令, 在shell编程中极为常用, 在终端下打印变量value的时候也是常常用到的, 因此有必要了解下echo的用法echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。该命令的一般格式为: echo [ -n ] 字符串其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号。用echo命转载 2017-02-23 11:12:39 · 935 阅读 · 0 评论 -
学习linux之 gcc/g++常用的命令行编译指令
1. gcc -E source_file.c-E,只执行到预编译。直接输出预编译结果。2. gcc -S source_file.c -S,只执行到源代码到汇编代码的转换,输出汇编代码。3. gcc -c source_file.c-c,只执行到编译,输出目标文件。4. gcc (-E/S/c/) source_file.c -o output_filenam原创 2016-10-09 10:36:45 · 31703 阅读 · 3 评论 -
Linux下如何增加swap分区大小
Linux下如何增加swap分区大小1. 检查当前的swap分区情况# free –m total used free shared buffers cached Mem: 1006 84 922 0 11转载 2016-10-18 10:33:54 · 594 阅读 · 0 评论 -
linux下获取微秒级精度的时间
使用C语言在linux环境下获得微秒级时间1、数据结构int gettimeofday(struct timeval*tv, struct timezone *tz);其参数tv是保存获取时间结果的结构体,参数tz用于保存时区结果:struct timezone{int tz_minuteswest;/*格林威治时间往西方的时差*/int tz_dsttim转载 2016-10-20 15:30:36 · 4054 阅读 · 0 评论 -
ubuntu 14.04 (64bit) 安装 CUDA7.5
看了很多人发的关于cuda的安装教程,方法千奇百怪,有的直接更新源就安装,不可否认我之前这台电脑就是通过直接更新源安装就成功了,但是前两天因为版本问题不得不重装系统,再用这种方法就再也安装不上了。要么安装后黑屏,要么登陆界面一直循环。找了很多种方法,大多都以悲剧告终。重装了20多次系统,最后通过看nvidia官方教程找了办法并安装成功。(一路畅通无阻,这种感觉真TM爽!这几天快被装系统搞崩了)转载 2016-12-23 12:57:15 · 1206 阅读 · 0 评论 -
ROS catkin工作空间的程序包
1 catkin程序包的组成必须包含:package.xml //提供程序包的元信息(包括包的依赖信息)catkin版本的CMakeLists.txt 每个目录下只能有一个程序包,即程序包不能嵌套,也不能并行。最简单的程序包 my_package/ -CMakeLists.txt -Package.xml2 catkin工作空间的程序包原创 2016-12-24 13:59:38 · 829 阅读 · 0 评论 -
ROS 节点通信
"节点(Node)" 是ROS中指代连接到ROS网络的可执行文件的术语。接下来,我们将会创建一个发布器节点("talker"),它将不断的在ROS网络中广播消息。//发布节点#include "ros/ros.h"#include "std_msgs/String.h"int main(int argc, char **argv){ ros::init(argc, argv, "原创 2016-12-24 13:34:23 · 3304 阅读 · 0 评论 -
ROS节点与运行
首先,先明确一下与节点相关术语的含义:Nodes:节点,一个节点即为一个可执行程序,它可以通过ROS与其他节点通信,另外,一个catkin程序包里可以有很多节点。Messages:消息,消息是一种ROS数据类型,用于订阅或发布到一个话题,是一个载体。Topics:话题,节点可以向话题发布消息或可以向话题订阅消息,像通信中转站一样。Master:节点管理器,ROS名称服务。ros...原创 2016-12-24 14:44:09 · 9689 阅读 · 1 评论 -
ubuntu下通过命令打开多个终端并在相应终端执指令
有时候我们在ubantu下每次运行一个工程时都需要打开多个终端,这对我们调试而言很不方便。比如我的另一篇博客 SVO-REMODE编译运行方法,需要打开5个终端,并执行相应指令。很容易想到,如果能写一个脚本,运行这个脚本就能够帮我们开启多个终端并执行相应的指令就好了。上网搜了一下,方法如下:指令:gnome-terminal -x bash -c "子终端要执行的命令"原创 2016-12-29 12:03:17 · 12594 阅读 · 2 评论