官网上提供了在Windows上的安装教程,其介绍了在Visual Studio 2017下编译安装RobWork的方法。本文主要介绍在Visual Studio 2015中安装RobWork的方法和注意事项。
软件安装包和环境
- RoboWork版本:SVN version 6335
- OS:Windows 7 64 bit
- Compiler:Visual Studio 2017 community (2018/11/5 16:00, 测试Visual Studio 2015 community通过)
- CMake: 3.10.2
- Boost:1.65.1
- Swig:3.0.12
- QT:5.10.1
RobWork版本历史信息截图:
安装方法
注意在系统环境变量中添加:BOOST_BOOT,BOOST_DIR,BOOST_LIBRARYDIR,然后才能顺利的找到boost,并链接到boost的库中,否则在编译时会出现boost的链接错误。如下:
BOOST_BOOT = E:\Code\RobWork\boost_1_65_1
BOOST_DIR = E:\Code\RobWork\boost_1_65_1
BOOST_LIBRARYDIR = E:\Code\RobWork\boost_1_65_1\lib64-msvc-14.1
编译RobWork命令(在git bash命令框中输入)
cmake -DCMAKE_BUILD_TYPE=Release -G "Visual Studio 15 2017 Win64" -DSWIG_EXECUTABLE="E:/Code/RobWork/swigwin-3.0.12/swig.exe" ../../RobWork
(2018/11/5 16:00, 测试Visual Studio 2015 community通过)
cmake -DCMAKE_BUILD_TYPE=Release -G "Visual Studio 14 2015 Win64" -DSWIG_EXECUTABLE="E:/Code/RobWork/swigwin-3.0.12/swig.exe" ../../RobWork
注意:需确保CMake-Gui 选中Build_rw_lua,否则RobWork将不编译生成rw_lua_s.lib
编译RobWorkStudio命令(在git bash命令框中输入)
cmake -DCMAKE_BUILD_TYPE=Release -G "Visual Studio 15 2017 Win64" -DCMAKE_PREFIX_PATH="E:\Code\Qt\Qt5.10.1\5.10.1\msvc2017_64" ../../RobWorkStudio
(2018/11/5 16:00, 测试Visual Studio 2015 community通过)
cmake -DCMAKE_BUILD_TYPE=Release -G "Visual Studio 14 2015 Win64" -DCMAKE_PREFIX_PATH="E:\Code\Qt\Qt5.10.1\5.10.1\msvc2015_64" ../../RobWorkStudio
编译测试
测试程序路径
E:\Code\RobWork\RobWork-src\RobWorkStudio\example\pluginUIapp
添加生成的lib文件路径知RobWorkStudio.ini文件中,如下:
[Plugins]
UserPlugin\DockArea=2
UserPlugin\Filename=SamplePlugin
UserPlugin\Path=E:/Code/RobWork/RobWork-src/RobWorkStudio/example/pluginUIapp/libs/Release
UserPlugin\Visible=true
错误记录
- 若采用VS2013编译,则在编译过程中出现错误: VS2013不支持constexpr错误提示,in: E:\Code\RobWork\RobWork-src\RobWork\ext\fcl\fcl\include\fcl\math\constants.h, 可能是C++11的不支持的问题。
- VS2015+CMake 3.10.2编译以上测试程序时出现以下问题:CMAKE Syntax error…… When parsing string…… Invalid escape sequence \C 等等错误提示。问题原因在于在系统环境变量设置RW_ROOT和RWS_ROOT是,路径采用了“\”分隔。改成采用“/”分隔之后,问题解决。截图如下: