参考资料:

生成.so文件:http://blog.csdn.net/u013243710/article/details/35795841

调用.so文件:http://blog.csdn.net/shawn_zhangguang/article/details/53609757 (此方法不能用)

用下面的方法成功:http://www.bubuko.com/infodetail-2005080.html
ros项目 CMakeLists.txt中添加自己的库路径

(配置.so 可以不需要):http://blog.csdn.net/u013859301/article/details/53079287

 

ROS下面CMakeList.txt 理解:http://blog.csdn.net/u013243710/article/details/35795841

ROS第一课: http://www.liuxiao.org/2015/11/ros-%E7%AC%94%E8%AE%B01-%E4%B8%80%E4%B8%AA%E6%9C%80%E7%AE%80%E5%8D%95%E7%9A%84%E4%BE%8B%E5%AD%90%EF%BC%9Ahello-robot%EF%BC%88%E6%B6%88%E6%81%AF%E3%80%81%E5%8F%91%E5%B8%83%E8%80%85%E4%B8%8E/

 

http://wiki.ros.org/catkin/CMakeLists.txt

  1. 进入正题

    首先,建立工程,如图所示:

  2. 生成.so

     

  3. 调用.so

    建立文件夹,将两个文件放入进去。

     

    配置CMakeList.txt

     

    测试:

     

    注意:

    1)通过添加到 /usr/lib当中也没用。

     

    2)而且,这里的数字千万不能写错。

    不然会出现 :没有规则可以引用目标等错误。

     

    所有,引用的库一定要写全,是 libxxx.so.

    然后就没啥问题了。

    3)通过添加

    export LD_LIBRARY_PATH=/root/Desktop/aabb

    这句代码在ROS里面也是不起作用的。

ROS库生成和调用的更多相关文章

  1. Linux动态库生成以及调用

    Linux下动态库文件的文件名形如 libxxx.so,其中so是 Shared Object 的缩写,即可以共享的目标文件. 在链接动态库生成可执行文件时,并不会把动态库的代码复制到执行文件中,而是 ...

  2. makefile编写---.a静态库的生成和调用

    #.SUFFIXES: .c .o Cc =gcc #OSA=/data/users/osa IncDir=-I. -I./ Debug = -g Cflags = -c $(DEBUG) Libs ...

  3. vc6静态库的生成和调用

    转自vc6静态库的生成和调用 1.静态库的生成: 在vc6.0++中Ctrl+N选择Projects下的Win32 Static Library,Project name:SumLib,点击OK,下一 ...

  4. Keil中LIB库的作用、生成与调用

    LIB库有什么用,一个简单的例子就是Silicon Labs为C8051F单片机USB提供的USBXpress LIB库了,如USB发送数据.接收数据等,都是通用性很强的函数,但因为保密的原因,这个函 ...

  5. Keil C 里面Lib库文件的生成与调用

    源:Keil C 里面Lib库文件的生成与调用

  6. 嵌入式开发之makefile---交叉编译静态库和动态库的生成和调用

    c和cpp 混合的动态库生成: $(LIBSO): $(COBJS) $(CPPOBJS) $(CPP) -shared -o $@ $^ $(LIBS) ////////////////////// ...

  7. 使用python调用zxing库生成二维码图片

    (1)     安装Jpype 用python调用jar包须要安装jpype扩展,在Ubuntu上能够直接使用apt-get安装jpype扩展 $ sudo apt-get install pytho ...

  8. Android项目中JNI技术生成并调用.so动态库实现详解

    生成 jni方式有两种:一种是通过SWIG从C++代码生成过度的java代码:另一种是通过javah的方式从java代码自动生成过度的C++代码.两种方式下的步骤流程正好相反. 第一种方式:由于需要配 ...

  9. Linux链接库三(C跟C++之间动态库的相互调用)

    http://www.cppblog.com/wolf/articles/74928.html http://www.cppblog.com/wolf/articles/77828.html http ...

随机推荐

  1. 给notepad++加nppFtp插件连接ubuntu编写文本

    打开notepad++的菜单栏中的插件,如果没有“插件管理”,去https://github.com/ashkulz/NppFTP/releases/tag/v0.27.2,下载对应的版本,将其解压后 ...

  2. visio画任意形状图形

    1,连接线--右击---曲线连接线 2,选中组合 3,开发工具--操作--连接--填充

  3. Jquery学习之路(一) 实现checkbox全选方法

    昨天早上有写到怎么利用Jquery实现全选 根据大家的意见对程序中一些写法不好的地方进行了修改,也是本人水平有限,存在各种考虑不到的地方. 文章最后我提出了一个问题,要写一个通用的方法来调用,于是就有 ...

  4. kylin

    Kylin只能导入扁平化的Hive表,简而言之,其不支持Hive的复杂数据类型,如array.struct.map等

  5. Python实现微信小程序支付功能

    由于最近自己在做小程序的支付,就在这里简单介绍一下讲一下用python做小程序支付这个流程.当然在进行开发之前还是建议读一下具体的流程,清楚支付的过程. 1.支付交互流程 当然具体的参数配置可以参考官 ...

  6. 最小生成树【p2121】 拆地毯

    题目描述--->p2121 拆地毯 分析 这题为什么是最大生成树. 先来bb两句 题目为拆地毯,让我们剩下k个地毯. 题目想要我们求得最大的美丽度. 且要求我们 保留的地毯构成的图中,任意可互相 ...

  7. java代码中执行liunx命令

    public static String runShell(String command){ try{ String[] commands = isLinux()?new String[]{" ...

  8. mac下eclipse导入windows项目文件乱码

    右键property->resource没有GBK,手工输入"GBK"项目正常. 一开始用windows被坑了,如果再用windows平台,第一时间将encoding改成UT ...

  9. Oracle truncate、 delete、 drop区别

    相同点: 1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 2.drop.truncate都是DDL语句(数据定义语言),执行后会自动提交. 不同点: 1. t ...

  10. A标签几种状况下的样式问题

    正常状态下的a标签是这样的. 去掉下划线只需要在样式里面加入a{text-decoration:none;}或者<a href="www.kanbuchuan.com"sty ...