【声明:大部分内容来自轩小宸】

win7 32bit见:http://www.cnblogs.com/xuanxiaochen/p/5996896.html

一、环境

windows 8.1 64bit,VS2013

(如果没有特殊原因,建议所有软件都安装到默认位置,避免不必要的麻烦)

二、准备工作

0、系统更新

使用360安全卫士或其他工具把系统补丁打好,这一步并不是必需的,为以后安装其他硬件的驱动做准备。

1、Cmake

下载地址:https://cmake.org/download/

下载合适自己系统的版本,安装即可。

2、wxWidgets

下载源码包wxWidgets-3.1.0,下载zip或7z。下载地址 http://www.wxwidgets.org/downloads/

另外还要下载wxWidgets手册Manual ZIP。

将其解压到C:\wxWidgets-x.x 或D:\wxWidgets-x.x(建议C盘)

打开MSVC 64位终端 (开始菜单 -》 Visual Studio 2013 -》 Visual Studio Tools -》 VS2013 x64 本机工具命令提示)

cd到X:\wxWidgets\build\msw

 

执行以下命令:  

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

3、OpenCV

建议使用OpenCV2.4.0或以上版本

下载地址:http://opencv.org/

可以下载相应系统的对应版本,也可以下载源码后用Cmake进行编译。建议直接采用前者直接下载安装即可。

4、qt + qt_vs_addin

我使用的是Qt5.5.0 msvc2013_64,cmake不能自动识别qt5,需要在环境变量中添加一条

CMAKE_PREFIX_PATH = “Qt目录下的msvc2013_64文件夹地址”

我的是 CMAKE_PREFIX_PATH = C:\Qt\Qt5.5.0\5.5\msvc2013_64

如果用qt4的话会方便一些,cmake可以自动识别。

5、PCL

这也不是必需安装的,不过PCLAllInOne的安装包中包含其他一些有用的三方库。

要采用以下设置,记得将其中的地址改为默认地址。

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"><ImportGroup Label="PropertySheets" /><PropertyGroup Label="UserMacros" /><PropertyGroup /><ItemDefinitionGroup><ClCompile>  <AdditionalIncludeDirectories>D:\Program Files\PCL 1.8.0\include\pcl-1.8;D:\Program Files\PCL 1.8.0\3rdParty\Boost\include\boost-1_59;D:\Program Files\PCL 1.8.0\3rdParty\Eigen\eigen3;D:\Program Files\PCL 1.8.0\3rdParty\FLANN\include;D:\Program Files\PCL 1.8.0\3rdParty\OpenNI2\Include;D:\Program Files\PCL 1.8.0\3rdParty\Qhull\include;D:\Program Files\PCL 1.8.0\3rdParty\VTK\include\vtk-7.0;D:\Qt\Qt5.5.1\5.5\msvc2013_64\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories></ClCompile><Link> <AdditionalLibraryDirectories>D:\Program Files\PCL 1.8.0\lib;D:\Program Files\PCL 1.8.0\3rdParty\Boost\lib;D:\Program Files\PCL 1.8.0\3rdParty\OpenNI2\Lib;D:\Program Files\PCL 1.8.0\3rdParty\FLANN\lib;D:\Program Files\PCL 1.8.0\3rdParty\Qhull\lib;D:\Program Files\PCL 1.8.0\3rdParty\VTK\lib;D:\Qt\Qt5.5.1\5.5\msvc2013_64\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories><AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib;comctl32.lib;wsock32.lib;glu32.lib;opengl32.lib;ws2_32.lib;Psapi.lib;pcl_visualization_debug.lib;pcl_search_debug.lib;pcl_io_debug.lib;pcl_io_ply_debug.lib;pcl_kdtree_debug.lib;pcl_common_debug.lib;pcl_octree_debug.lib;libboost_system-vc120-mt-gd-1_59.lib;libboost_filesystem-vc120-mt-gd-1_59.lib;libboost_thread-vc120-mt-gd-1_59.lib;libboost_date_time-vc120-mt-gd-1_59.lib;libboost_iostreams-vc120-mt-gd-1_59.lib;libboost_chrono-vc120-mt-gd-1_59.lib;vtkDomainsChemistryOpenGL2-7.0-gd.lib;vtkDomainsChemistry-7.0-gd.lib;vtkFiltersFlowPaths-7.0-gd.lib;vtkFiltersGeneric-7.0-gd.lib;vtkFiltersHyperTree-7.0-gd.lib;vtkFiltersParallelImaging-7.0-gd.lib;vtkFiltersProgrammable-7.0-gd.lib;vtkFiltersSelection-7.0-gd.lib;vtkFiltersSMP-7.0-gd.lib;vtkFiltersVerdict-7.0-gd.lib;vtkverdict-7.0-gd.lib;vtkGeovisCore-7.0-gd.lib;vtkproj4-7.0-gd.lib;vtkGUISupportQtSQL-7.0-gd.lib;vtkIOSQL-7.0-gd.lib;vtksqlite-7.0-gd.lib;vtkImagingMath-7.0-gd.lib;vtkImagingMorphological-7.0-gd.lib;vtkImagingStatistics-7.0-gd.lib;vtkImagingStencil-7.0-gd.lib;vtkInteractionImage-7.0-gd.lib;vtkIOAMR-7.0-gd.lib;vtkFiltersAMR-7.0-gd.lib;vtkIOEnSight-7.0-gd.lib;vtkIOExodus-7.0-gd.lib;vtkIOExport-7.0-gd.lib;vtkIOImport-7.0-gd.lib;vtkIOInfovis-7.0-gd.lib;vtklibxml2-7.0-gd.lib;vtkIOLSDyna-7.0-gd.lib;vtkIOMINC-7.0-gd.lib;vtkIOMovie-7.0-gd.lib;vtkoggtheora-7.0-gd.lib;vtkIOParallel-7.0-gd.lib;vtkexoIIc-7.0-gd.lib;vtkFiltersParallel-7.0-gd.lib;vtkIONetCDF-7.0-gd.lib;vtkNetCDF_cxx-7.0-gd.lib;vtkNetCDF-7.0-gd.lib;vtkhdf5_hl-7.0-gd.lib;vtkhdf5-7.0-gd.lib;vtkjsoncpp-7.0-gd.lib;vtkIOParallelXML-7.0-gd.lib;vtkIOXML-7.0-gd.lib;vtkIOXMLParser-7.0-gd.lib;vtkexpat-7.0-gd.lib;vtkParallelCore-7.0-gd.lib;vtkIOLegacy-7.0-gd.lib;vtkIOPLY-7.0-gd.lib;vtkIOGeometry-7.0-gd.lib;vtkIOVideo-7.0-gd.lib;vtkRenderingContextOpenGL2-7.0-gd.lib;vtkRenderingImage-7.0-gd.lib;vtkRenderingLOD-7.0-gd.lib;vtkRenderingQt-7.0-gd.lib;vtkFiltersTexture-7.0-gd.lib;vtkRenderingVolumeOpenGL2-7.0-gd.lib;vtkViewsContext2D-7.0-gd.lib;vtkViewsQt-7.0-gd.lib;vtkGUISupportQt-7.0-gd.lib;vtkRenderingOpenGL2-7.0-gd.lib;vtkglew-7.0-gd.lib;vtkViewsInfovis-7.0-gd.lib;vtkChartsCore-7.0-gd.lib;vtkRenderingContext2D-7.0-gd.lib;vtkFiltersImaging-7.0-gd.lib;vtkInfovisLayout-7.0-gd.lib;vtkInfovisCore-7.0-gd.lib;vtkViewsCore-7.0-gd.lib;vtkInteractionWidgets-7.0-gd.lib;vtkImagingHybrid-7.0-gd.lib;vtkIOImage-7.0-gd.lib;vtkDICOMParser-7.0-gd.lib;vtkIOCore-7.0-gd.lib;vtkmetaio-7.0-gd.lib;vtkpng-7.0-gd.lib;vtktiff-7.0-gd.lib;vtkjpeg-7.0-gd.lib;vtkFiltersHybrid-7.0-gd.lib;vtkImagingGeneral-7.0-gd.lib;vtkImagingSources-7.0-gd.lib;vtkFiltersModeling-7.0-gd.lib;vtkInteractionStyle-7.0-gd.lib;vtkRenderingAnnotation-7.0-gd.lib;vtkImagingColor-7.0-gd.lib;vtkRenderingVolume-7.0-gd.lib;vtkRenderingLabel-7.0-gd.lib;vtkRenderingFreeType-7.0-gd.lib;vtkRenderingCore-7.0-gd.lib;vtkCommonColor-7.0-gd.lib;vtkFiltersExtraction-7.0-gd.lib;vtkFiltersStatistics-7.0-gd.lib;vtkalglib-7.0-gd.lib;vtkImagingFourier-7.0-gd.lib;vtkImagingCore-7.0-gd.lib;vtkFiltersGeometry-7.0-gd.lib;vtkFiltersSources-7.0-gd.lib;vtkFiltersGeneral-7.0-gd.lib;vtkFiltersCore-7.0-gd.lib;vtkCommonExecutionModel-7.0-gd.lib;vtkCommonComputationalGeometry-7.0-gd.lib;vtkCommonDataModel-7.0-gd.lib;vtkCommonMisc-7.0-gd.lib;vtkCommonTransforms-7.0-gd.lib;vtkCommonMath-7.0-gd.lib;vtkCommonSystem-7.0-gd.lib;vtkCommonCore-7.0-gd.lib;vtksys-7.0-gd.lib;vtkfreetype-7.0-gd.lib;vtkzlib-7.0-gd.lib;Qt5Widgetsd.lib;Qt5Guid.lib;Qt5Cored.lib;flann_cpp_s-gd.lib;OpenNI2.lib;%(AdditionalDependencies)</AdditionalDependencies></Link></ItemDefinitionGroup><ItemGroup />
</Project>

三、配置MRPT

1、下载

下载地址:http://www.mrpt.org/download-mrpt/

下载Binaries (precompiled) for WindowsVS2013 64bit版本。

直接安装,如安装到D:\Program Files\mrpt-1.4.0

新建自定义目录,作为MPRT编译工作目录,如本文D:\MRPT\buildVS2013(该目录可自行定义)

2、Cmake(cmake-core)配置

(1)设置

编译器选择VS2013 64位。

Where is the source code : D:/Program Files/mrpt-1.4.0

Where to build the binaries: D:/MRPT/buildVS2013

第一次点Configure,会出现很多问题,一个个解决。

若Configure报错,请以管理员身份运行CMAKE,或者参考:

http://bbs.ithome.com/thread-583106-1-1.html

 

  

(2)详细配置(部分设置需要勾选Advanced才能出现)

1)设置OPENCV路径

OPENCV_DIR = D:/opencv/build

2)设置wxWidget路径

       wxWidgets_ROOT_DIR = D:/wxWidgets-3.1.0

       wxWidgets_LIB_DIR = D:/wxWidgets-3.1.0/lib/vc_x64_dll

3)检查以下Qt5的路径有没有被找到,若没有,请参考上文提到Qt5部分。

(3)其他配置

      BUILD_APPLICATIONS:默认为ON。如果未选上,则不能生成应用软件。如不需要,可以取消。建议第一次使用MRPT时,请勾选,可以深入了解其中的代码及过程。

      BUILD_APP_**:默认为ON。对应的应用软件,如不用编译,可以不勾选。

      BUILD_ARIA:默认ON。是否生成用于连接Activemedia机器人的ARIA库,如未使用,请取消。

      PCL_DIR:PCL点云库。如需使用,请先安装PCL点云库。

      BUILD_KINECT:默认ON。如未使用Kinect,可以取消。      

      BUILD_ROBOPEAK_LIDAR:默认ON。RobotPeak Lidar配置。

      

再一次点击Configure,基本选项配置如下(可能会有部分不同,关键项一致就可以):

     ______________________ OPTIONAL LIBRARIES ______________________

    Assimp (3D models) : Yes (Built-in) [Version: 3.1.1]

    eigen3 : Yes (Built-in) [Version: 3.2.5]

    ffmpeg libs (Video streaming) : Yes (System) [avcodec , avutil , avformat ]

    gtest (Google unit testing library) : Yes (Built-in)

    Intel threading lib (TBB) : No

    lib3ds (3DStudio scenes) : Yes (Built-in)

    libclang (for ConvertUTF) : Yes (Built-in)

    libjpeg (jpeg) : Yes (Built-in)

    liblas (ASPRS LAS LiDAR format) : No

    mexplus : No

    OpenCV (Image manipulation) : Yes (System) [Version: 2.4.13]

    OpenGL : Yes (System)

    GLUT : Yes (Built-in)

    PCAP (Wireshark logs for Velodyne) : No

    PCL (Pointscloud library) : Yes [Version: ...]

    SuiteSparse : No

    wxWidgets : Yes (System)

    zlib (compression) : Yes (Built-in)

    yamlcpp (YAML file format) : No [Version: ]

  

    _____________________ HARDWARE & SENSORS _______________________

    libdc1394-2 (FireWire capture) : No

    DUO3D Camera libs : No

    National Instruments...

    ...NIDAQmx? : No

    ...NIDAQmx Base? : No

    NITE2 library : No

    OpenKinect libfreenect : No

    OpenNI2 : Yes

    PGR FlyCapture2 : No

    PGR Triclops : No

    Phidgets : No

    RoboPeak LIDAR : Yes

    SwissRanger 3/4000 3D camera : No

    Videre SVS stereo camera : No

    xSENS MT 3rd generation : Yes (Built-in)

    xSENS MT 4th generation : Yes (Built-in)

    Intersense sensors : No

    其他硬件及传感器,请根据自行需要配置。

四、编译MRPT

接着上一步,点击open project,可直接用VS2013打开项目文件。

在进行编译前,请关闭浏览器、杀毒软件、PDF阅读软件等较占用内存较大的软件。如果你是战斗机,请忽略。

接着就可以直接点击生成解决方案。

    

编译过程稍长,耐心等待。

编译完成即可。

五、异常解决方案

    错误1:

      error LNK1104: 无法打开文件“libmrpt-hwdrivers140-dbg.lib” 等其他类似错误

    解决方法:

      如有以上错误,请先检查其他错误;重新编译后,如果没有其他错误,一般都不会出现。如有,请重新检查以上配置是否正确。

    错误2:

      error C1083: 无法打开包括文件: “wx/image.h”: No such file or directory

    解决方法:

      请检查wxWidget安装和CMAKE配置步骤,是否设置正确路径。

    错误3:

      error LNK1112: 模块计算机类型“x64”与目标计算机类型“X86”冲突

    解决方法:

      请检查下载mrpt包是否是对应系统版本。

    错误5:

      “M_PI”: 宏重定义

    解决方法:

      找到对应的math.h文件,将M_PI定义添加两句代码。如下,      

  #ifndef M_PI#define M_PI       3.14159265358979323846#endif

    错误6:

      编译器的堆空间不足

    解决方法:

      编译前请关闭浏览器、杀毒软件等占用内存较大的软件。

    错误7:(最关键的一个错误)

      error C2371: “int32_t”: 重定义;不同的基类型  或“int8_t”

    解决办法:

      因为两个.h文件所定义的int32_t和int8_t的类型不同。错误会提示哪两个.h文件冲突,打开pstdint.h文件,找到对应的定义,并修改为另一个.h文件的定义类型。另外因为权限问题,pstdint.h文件无法直接修改,可将其保存在其他目录并复制到该目录下。在覆盖之前,先进行备份。

    错误8:

      error MSB6006: “CL.exe”已退出,代码为X

    解决方法:

      关闭所有杀毒软件或类似程序

参考 http://www.cnblogs.com/xuanxiaochen/p/6004842.html

  六、参考

    http://www.mrpt.org/Building_and_Installing_Instructions

    《MRPT Tutorial》 (中文版) 汪若博 译

  (欢迎转载,转载请注明出处。)

mrpt在win8.1 64bit + vs2013环境下的安装和编译相关推荐

  1. ORB-SLAM2环境配置以及运行详解(一):ROS与非ROS环境下的安装、编译、离线数据集测试

    系统环境:Ubuntu 16.04 LTS ROS版本:Kinetic Kame ORB-SLAM2源码的编译部分有ROS版本和非ROS版本,非ROS版本不需要安装ROS也可以运行,主要针对离线数据集 ...

  2. Kaldi语音识别库linux环境下的安装和编译

    sudo apt-get install subversion svn update svn co https://kaldi.svn.sourceforge.net/svnroot/kaldi/tr ...

  3. Win10环境下caffe安装与编译

    最近换了台实验室的电脑,系统从win7升级到了win10,为此caffe的配置都要从头开始搭起.由于之前搭过一次还算顺利,之前的教程找不到了,索性再找一篇新的从头学习. 搭建caffe有一个需要注意的 ...

  4. 【OpenCV3】OpenCV3.2.0在VS2013环境下Cmake编译与快速配置

    近年来随着人工智能和机器视觉的日益火爆,OpenCV作为机器视觉领域内的利器也得到了长足和快速的发展.作为OpenCV的忠实粉丝,一直使用的是OpenCV2的版本,但是OpenCV3相对于OpenCV ...

  5. VS2013环境下配置glut、glew、freeglut、gltools

    VS2013环境下配置glut.glew.freeglut.gltools 1.glew配置 1.解压glew文件下的compiled文件夹下的"glew-2.0.0-win32.zip&q ...

  6. RHEL5.6环境下yum安装MySQL

    RHEL5.6环境下yum安装MySQL记录,2017年2月20日 1.卸载原有的MySQL rpm -qa命令查询是否安装了MySQL [root@localhost mysql]# rpm -qa ...

  7. Redis学习笔记~Redis在windows环境下的安装

    Redis是一个key-value的存储系统,它最大的特点就是可以将数据序列化到文件中. redis存储在服务器的内存或者文件中,它不是session,不是cookies,它只是个更安全,更稳定,更可 ...

  8. windows环境下如何安装memcached教程

    Memcached 是一个开源免费高性能的分布式内存对象缓存系统,能够加快网站访问速度和减轻数据库压力,本文向大家介绍下windows环境下如何安装memcached. 工具/原料 memcached ...

  9. 4.windows环境下如何安装memcached教程(转载+自己整理)

     Memcached 是一个开源免费高性能的分布式内存对象缓存系统,能够加快网站访问速度和减轻数据库压力,本文向大家介绍下windows环境下如何安装memcached.百度经验:jingyan. ...

  10. centos7环境下MySQL安装教程

    Linux centos7环境下MySQL安装教程 作者:随缘相识-(志同道合) 字体:[增加 减小] 类型:转载 时间:2017-03-17 我要评论 这篇文章主要为大家详细介绍了Linux cen ...

最新文章

  1. Android更新Ui的几种方法
  2. 独立式环境与宿主式环境————《标准C语言指南》读书笔记01
  3. html是大部分计算机都可以理解的语言,关于胃的静脉回流,哪项错误()。A、胃左静脉汇入门静脉或脾静脉B、胃右静脉汇入门静脉主干C、胃短...
  4. 【期望】守卫挑战(金牌导航 期望-9)
  5. junit:junit_简而言之,JUnit:测试隔离
  6. ZeroForums论坛正式开始测试运行
  7. opencv查找边界_数据边界:查找差距,孤岛等
  8. 大数据平台分析发挥哪些作用
  9. Visio风格源代码组件库,流程图,矢量图,图形编辑,打印,导入,导出,VC++源代码...
  10. 前端请求报错Provisional headers are shown接口请求失败
  11. OARACLE——创建表空间、用户、权限、删除用户、导入、导出
  12. java deflate_[Java]关于Deflate、GZip格式网页的解压
  13. 国产开源「文本-视频生成」模型!免费在线体验,一键实现视频生成自由
  14. 月薪 800 到 2w 加
  15. JS实现鼠标经过和离开图片放大缩小效果
  16. java-php-python-ssm信贷管理系统计算机毕业设计
  17. 一款可以对百度网盘批量改名与文件批量复制的软件
  18. 梅尔频谱图与音频相互转化
  19. 坚果投影仪陷入双11刷单漩涡?良性发展才是硬道理!
  20. Activiti7工作流+SpringBoot

热门文章

  1. 数学建模之matlab软件学习04——专题四MATLAB绘图
  2. 【华为OD机试真题 JS】字符串分割
  3. start request repeated too quickly for docker.service
  4. gis怎么通过水库划分子流域_分布式水文模型子流域划分方法
  5. 保险中介3.0时代:数字化中介在场景中打造核心竞争力
  6. 算法设计与分析_《算法设计与分析》(2017年8月版)修订
  7. 人物传记思维导图模板
  8. Kali Linux 自定义GDM3登录背景图片和LOGO
  9. android 编辑txt,.txt到可修改的android数据库
  10. 【C语言】数组(详细讲解+源码展示)