Win10下Vs2013 + cmake3.6.1 + mrpt1.4.0+opencv2.9.4+wxWidget3.1.0环境配置

所接触过的最令我崩溃的环境配置。之前没有考虑到vs2013 2015的问题,造成了很多麻烦。在此提示:

vs2013 的vc12和vs2015的vc14根部不是一回事!

虽然vs2012和vs2013都是vc12,但是 Vs2012的tool命令行和vs2013的也不是一回事(wxWidgets)其实很多问题都可以避免,一定要细心细心!

主要参考mrpt官网 http://www.mrpt.org/Building_and_Installing_Instructions

由于vs2015和之前版本的不一样,有很多需要注意之处,特别对opencv进行了补充。

如果报错说找不到什么文件,首先检查环境变量。

 

  1. 连接激光,若没有成功安装驱动,安装驱动(可以用360驱动大师安装)

2. 下载安装vs2013,添加环境变量

  1. 下载并安装cmake3.6.1(较低版本3.0.x不支持vs2015)

4. 修改wxWidget文件以支持vs2015:http://www.cnblogs.com/sqxy110/p/4897494.html

开始菜单——vs2013兼容工具命令提示符——cd到 WXWIDGETS/build/msw下

命令行build wxWidget(很久)http://www.mrpt.org/Building_and_Installing_Instructions

Build for 32bit:

Open the MSVC 32bit command-line prompt (from the start menu -> MSVC -> Visual Studio Tools), do a “cd” to the WXWIDGETS/build/msw directory and run:

nmake -f makefile.vc BUILD=release SHARED=1 RUNTIME_LIBS=dynamic DEBUG_INFO=0 VENDOR=mrpt USE_OPENGL=1
nmake -f makefile.vc BUILD=debug SHARED=1 RUNTIME_LIBS=dynamic DEBUG_INFO=1 VENDOR=mrpt USE_OPENGL=1

Build for 64bit:
Open the MSVC 64bit command-line prompt (from the start menu -> MSVC -> Visual Studio Tools), do a “cd” to the WXWIDGETS/build/msw directory and run:

nmake -f makefile.vc BUILD=release SHARED=1 RUNTIME_LIBS=dynamic DEBUG_INFO=0 VENDOR=mrpt USE_OPENGL=1 TARGET_CPU=amd64
nmake -f makefile.vc BUILD=debug SHARED=1 RUNTIME_LIBS=dynamic DEBUG_INFO=1 VENDOR=mrpt USE_OPENGL=1 TARGET_CPU=amd64

 

5. 下载opencv2.4.9 http://opencv.org/

!!!!注意:下载linux版的opencvxxx-zip 不要下载用于windows的exe文件!(因为vs2015编译器和之前版本的不一样,所以要自己编译)

 

解压后,Cmake Opencv

Cmake opencv 时候,如果报错std::tuple...可以在cmake时候,对tests和 pertests的钩去掉。引用自:code.opencv.org/issues/4376 四楼Nate Guerin

在vs中打开opencv build下的sln,重新生成(很久), 可看到Opencv/build/lib/Debug下有很多.lib

添加系统环境变量 ../opencv/build

  1. 下载mrpt ,

Cmake mrpt

看看wxWidgets的目录和opencv的目录有没有找到,没有的话,自己加上。

在vs中打开mrpt/build/apps/icp-slam-live 重新生成(很久)。

在这一步,可以先build mrpt-base等等模块,然后再编译别的。直接选allbuild时候,可能很久才发现问题。

7. 设置icp-slam-live为启动项。

找到icp-slam-live激光配置文件“icp-slam-live_demo_PRL_gridmap.ini”,复制到工程下。

修改ini文件,根据自己连接激光的端口号,更改端口号。修改之前是com10

Icp-slam-live右键——属性——调试——命令参数,设置为以上ini文件名称

启动icp-slam-live

工程目录build/Debug下有个rawlog文件,是输出的数据。

Mrpt/build/apps/icp-slam用来看此rawlog

或者apps/rawlogviewer。编译运行后,里面有个rawlogviewer.exe,可以看rawlog,可以把地图保存到txt。

使用rplida  sdk

Sdk/output/win32/debug里面有现成的exe。具体参看sdk/doc

配置文件更改:

  1. 配置文件需要把端口改成连接的端口。

2. 需要ini的90行

# ========================================================

#            MULTIMETRIC MAP CONFIGURATION

# See docs for (Google for) mrpt::maps::CMultiMetricMap

# ========================================================

# Creation of maps:

occupancyGrid_count=1

pointsMap_count=0

改为

occupancyGrid_count=0

pointsMap_count=1

查看机器人位置

/apps/icpslam/LOG_ICP_SLAM下面有个txt就是机器人的轨迹,是以机器人的初始位置为原点。

查看生成的png地图图片

在rawlog的文件夹下,如果正常退出程序:即关闭3D显示界面,就会生成png图片,否则(如果直接关闭控制台)程序运行不到生成图片的一行。

错误记录:

编译wx时候,手贱脑残点了vs2012,结果报错unresolved external symbol....检查是在wx里面出的错。

用vs2013编译过后,就好了

【MRPT】【icp-slam-live】Vs2013+ cmake3.6.1 + mrpt1.4.0+opencv2.9.4+wxWidget3.0.2环境配置的更多相关文章

  1. OpenCV2.4.13+VS2013开发环境配置

    List1:完成 写在前面:之前电脑很杂乱的装了OpenCV的2个版本,在配置OpenCV和VS2013环境时死活配不好.但是接下来的工作要用到,没有办法,还是得好好做.今天重新装了OpenCV2.4 ...

  2. VS2013中BOOST库的环境配置与使用

    &1 安装Boost 文件下载:链接:http://pan.baidu.com/s/1kUKaOFP 密码:auf2 解压之后放到你想安装的文件夹内,我的是在C:\Program Files\ ...

  3. 75.VS2013和opencv3.1.0开发环境配置

    首先要做的就是 开发环境配置,具体过程如下: Step 1:OpenCV环境变量配置 我的电脑--->属性--->高级系统设置--->高级--->环境变量--->系统变量 ...

  4. Win8.1+VS2013+WDK8.1+VirtualBox or VMware 驱动开发环境配置

    https://blog.csdn.net/charlessimonyi/article/details/50904956 Win8.1+VS2013+WDK8.1+VirtualBox or VMw ...

  5. Qt5学习笔记(1)-环境配置(win+64bit+VS2013)

    Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...

  6. 编译osgEarth2.8+VS2013+CMake3.4.0在Release版本的问题

    1>LINK : fatal error LNK1181: 无法打开输入文件"optimized.lib" 可以到http://forum.osgearth.org搜索相关帖 ...

  7. 无法打开输入文件“optimized.lib” 编译osgEarth2.8+VS2013+CMake3.4.0在Release版本的问题

    1>LINK : fatal error LNK1181: 无法打开输入文件“optimized.lib” 可以到http://forum.osgearth.org搜索相关帖子,gwaldron ...

  8. (OpenCV) VS2013 + opencv-2.4.10.exe + Windows 10 开发环境配置

    主要配置2点: - Windows 环境变量. - VC++ 配置. STEP BY STEP: 1. 双击 ”opencv-2.4.10.exe“,解压到本地文件夹 “C:\ ". 2. ...

  9. win7(X64)+VS2013+OpenCV3.1环境配置

    &1 源文件 VS2013: 链接:http://pan.baidu.com/s/1o8EKQq2 密码:open OpenCV3.1:  链接:http://pan.baidu.com/s/ ...

随机推荐

  1. Uva 725 除法

    紫书P182 直接枚举 0~9 的全排列会超时,枚举fghij就可以了,计算出 abcde ,这里有一个新的函数,也可以不用咯,把每一位数据提取出来,while循环可以做到,这里的新的函数是,spri ...

  2. 2007 Asia - Nanjing F题,字典树

    题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=2 ...

  3. FileInputstream的available()方法

    摘自:http://greemranqq.iteye.com/blog/2051487

  4. java Web应用配置log4j日志记录

    公司启动全国支票影像系统,有这样一个功能是和消息中间件打交道,需要记录每一个报文出错情况,因为方便后期开发人员的调试,我选用了log4j作为日志记录,好了废话不多说了! 第一步:首先建立一个WEB工程 ...

  5. mysql DATE_ADD DATE_SUB

    一.DATE_ADD() 函数向日期添加指定的时间间隔. DATE_ADD(date,INTERVAL expr type)date 参数是合法的日期表达式.expr 参数是您希望添加的时间间隔. t ...

  6. ①创建项目testpackage ②在pack2.B中添加方法f ③在类A中添加如下三个成员变量:int型的私有变量i float型的变量f double型的公有变量d 在pack1.B的main方法中为对象a的成员变量f和d分别赋值为2和3 在pack2.C的main方法中为对象a的成员变量d赋值为3

    package pack1; public class A { private int i; float f; public double d; public float getF() { retur ...

  7. maven入门教程

    一.Maven 是什么? Maven 英文名称:专家,由名字可见,这个工具野心非常大.有人说他是"构建工具",一个用来把源代码构建成可发布的构件的工具.也有人说是项目管理工具. 官 ...

  8. Spring的核心机制——依赖注入(Dependency Inject)

    Spring不仅提供对象,还提供对象的属性值,而不是由使用该对象的程序所提供的. Java应用是由一些相互协作的对象所组成的,在Spring中这种相互协作的关系就叫依赖关系. 如果A组件调用了B组件的 ...

  9. 精通正则表达式(第三版)——Mastering Regular Expressions,3rd Edition——读书笔记1

    基础知识介绍: 子表达式匹配 环视 引号内的字符串:"(^")*" 12小时制:(1[0123]|[1-9]):[0-5][0-9]*(am|pm) 24小时制:(([0 ...

  10. 本地设置正常,放服务器上就报 System.Security系统找不到指定的文件解决方法

    在应用程序池设置中将“加载用户配置文件”(Load User Profile)设置为true,问题就解决.