在cmake处理的过程中,也许会出现诸如
Could not copy from: C:/Program Files/CMake 2.8.12.2/share/cmake-2.8/Templates/CMakeVSMacros2.vsmacros
to: d:/用户目录/Documents/Visual Studio 2010/Projects/VSMacros80/CMakeMacros/CMakeVSMacros2.vsmacros
的红色字样警告,因为这是系统用户的路径名有中文字符 “用户目录”造成的,因为cmake不认中文路径,但是只要我们在上面的第三步中设置生成的路径中没有中文就行了。就算有这个因为C:/Users/下有中文照成的错误,也对我们这次的生成无碍,不用去管他。
再点击一次configure时会快速完成配置。
6、点击生成generate,
当看到generating done字样时,说明生成成功了。
7、此时解决方案已经在文件夹:F:\study\program_software\VC++ program\PCL\PCL_study\project_inliers2\cmake-bin下生成成功了。
8.在VS2010中打开project_inliers.sln, 并重新设置启动项为project_inliers(默认为all_Build,如果不修改会出错,原因参照http://blog.csdn.net/poem_qianmo/article/details/21974023)。
此时即可运行了。
9.但是在运行时很可能出现错误:
fatal error LNK1104: 无法打开文件“C:\Qt\4.8.0\lib\QtGuid4.lib”,这主要是因为VTK库里面依赖函数的关系,我的QT版本是Qt5.2.1所以必须修改这些依赖函数。
解决方法是打开路径C:\Program Files\PCL 1.6.0\3rdParty\VTK\lib\vtk-5.8下的三个文件:
VTKConfigQt.cmake
VTKTargets-debug.cmake
VTKTargets-release.cmake
将其中的路径C:\Qt\4.8.0替换成你现有版本的Qt路径,例如我的是:C:\Qt\Qt5.2.1\5.2.1\msvc2010_opengl,(当然也可以将这个路径定义为环境变量 $(QT_ROOT));然后将对应的库文件如QtGuid4.lib替换成你自己安装的Qt版本的库文件如Qt5Guid.lib,最终即可正常运行。
运行结果为: