ROS下面调用自定义的头文件和.cpp/.so文件(亲测有效)
前言
ROS下面使用已经编译好的ROS package是很方便的,但是大多数我们可能自己定义了一些头文件,想去直接引用,那么如何在ROS下面调用自己的定义的函数呢?
ROS下调用自定义的头文件
如下图所示,在ROS某个工程下面和源文件同级目录下建立两个文件夹,include和lib。
其中include文件夹存放.h头文件,lib文件夹存放编译生成的.so文件,.h文件对应的.cpp文件直接放在源文件同级目录下即可,比如imprcoess.cpp。这里的函数定义可以封装成动态链接库,也可以直接定义成.cpp文件。
然后修改下Cmakelist.txt
catkin_package(INCLUDE_DIRS include
# LIBRARIES car_sensorCATKIN_DEPENDS cv_bridge image_transport roscpp sensor_msgs std_msgs rospy
# DEPENDS system_lib
)include_directories(include${catkin_INCLUDE_DIRS}
)link_directories(${catkin_LIB_DIRS} lib
)find_package(OpenCV)
add_executable(camera camera.cpp)
target_link_libraries(camera ${catkin_LIBRARIES} ${OpenCV_LIBRARIES} libdximageproc.so libgxgvtl.so libgxiapi.so libgxu3vtl.so libdarknet.so)
#这里的.so文件即是动态链接库,如果编译时找不到动态链接库,请将动态链接库copy到 /usr/lib中
这里的.so文件即是动态链接库,如果编译时找不到动态链接库,请将动态链接库copy到 /usr/lib中。然后编译通过,可以rosrun啦。。。
ROS下面调用自定义的头文件和.cpp/.so文件(亲测有效)相关推荐
- Github高速下载文件,方法简单,亲测有效
Github高速下载文件,方法简单,亲测有效 Github对我们来说是一个宝贵的仓库,但现在Github下载逐渐感人,在尝试多种方法后,推荐以下这种方法,该方法需要一个码云账号,简单注册即可,高速下载 ...
- java调用阿里云上传和下载(项目亲测)
pom文件导入依赖就不贴了,直接到官网贴最新的就行:https://help.aliyun.com/document_detail/32009.html?spm=a2c4g.11186623.6.80 ...
- JAVA 调用微信API 生成小程序跳转地址 亲测有效 【附效果图】
JAVA 调用微信API 生成小程序跳转地址 JAVA 调用微信API 生成小程序跳转地址 由于工作需要,需要在后台生成自己公司的小程序分享地址以供前端工作人员使用,在开发当前功能时因为遇到一些问题导 ...
- Java使用iText生成word文件的完美解决方案(亲测可行)
JAVA生成WORD文件的方法目前有以下种: 一种是jacob 但是局限于windows平台 往往许多JAVA程序运行于其他操作系统 在此不讨论该方案 一种是pio但是他的excel处理很程序 wor ...
- zblog php获取文章的第一张图片,zblog调用文中第一张图片作为缩略图,博主亲测可用...
昨天更新了锦鲤主题模板,网友反馈说文章插入视频之后会出现错版,网站整个都是乱的,随后看了下源代码,没什么太大问题,就是缩略图调用的时候出现了问题,错误的抓取了mp4格式的文件,然后去查看缩略图插件代码 ...
- ubuntu从本地上传文件到云服务器、从云服务器下载文件到本地的命令(亲测有效)
1.ubuntu从本地上传文件到云服务器: sudo scp 本地文件路经 username@目标ip:目标路径 在本地打开终端,输入命令,如: scp ./localfile.txt usernam ...
- 卸载wps后桌面上的office文件图标变成了白色(亲测有效)
适用Office2016/365中的Word.PowerPoint.Excel文件图标因安装WPS造成图标异常,显示为无法识别的程序图标,卸载.重装都不能修复,但能正常使用. 解决办法: 1.运行re ...
- 游戏缺少steam_api.dll文件的解决办法【亲测可用】
游戏丢失steam_api.dll文件修复补丁,为玩家解决大多数steam平台游戏及其破解游戏运行时会出现的相应文件问题,本次为大家带来steam_api.dll 64位版补丁下载,有需要的朋友们快来 ...
- 清理C盘内存:电脑C盘飘红了,那么如何清理垃圾文件,总结几种亲测方案
作为web前端工程师,不能局限在前端的知识领域,也不只是后端领域,还要多多学习了解计算机知识.在日常使用电脑的时候,发现C盘的占据的内存越来越大,我甚至遇到过把C盘直接干红,这时候就需要做相关的清理, ...
- python批量给文件命名为001,002,...【亲测有效】
文章目录 命名结果 源代码 参考 命名结果 命名格式:img_4位数字 源代码 import scipy.io as scio import numpy as np import osfolder_p ...
最新文章
- 【深度学习】(5) 简单网络,案例:服装图片分类,附python完整代码
- ubuntu安装linux deepin,如何在Ubuntu中安装Deepin终端 | MOS86
- IOT(Index Organized Table)
- android monkey优化,GitHub - baozhida/AndroidMonkey: 这个项目是CrashMonkey4Android可执行文件,修复了一些bug,做了一些优化...
- DataBseDesign工作笔记003---ERStudio使用笔记_基本使用方法详解
- 大道至简——编程的精义
- Android复习强化笔记(二)
- 谈谈Cost function and gradient的matlab写法
- SQL Server 数据库增删改查
- ida 反编译 php,飘云阁安全论坛在IDA pro中的这样一段反编译代码能够改写成易语言吗 - Powered by Discuz!...
- ICMP协议和ping命令
- 51nod 1076 2条不相交的路径 无向图强联通分量 trajan算法
- 高考为什么考计算机信息,信息技术是否应该进入高考?
- CSS动画 animation与transition
- Vue源码阅读(28):mergeOptions() 方法源码解析
- 网易数帆王佰平:我的 Envoy Maintainer 之路
- 《第五堂棒球课》:MLB棒球创造营·棒球名人堂
- RHEL7.3 DNS配置
- 腾讯地图实现微信小程序地图定位教程
- access订单明细表怎么做_如何制作材料明细表...doc
热门文章
- 存储单位 KB MB bit
- “吃神么,买神么”的第一个Sprint计划(第三天)
- 在SQL Server 2005中实现异步触发器架构
- 如何使用CodeBlocks开发C/C++程序
- WinForm窗体生命周期
- Linux下Oracle进程CPU使用率过高处理方式
- SWIG 转换C++接口为Java接口
- Thingsboard 3.1.0 - 规则链:外部结点REST API
- 在汇编语言调用c语言程序,C/C++调用汇编语言实例:目录表程序
- leetcode 贪心_「leetcode」135.分发糖果【贪心算法】详细图解