Contents
Overview
- Uses windows sdk 7.1
- Compiles with cmake/nmake.
- Compiles in Release mode with Debug Symbols (.pdb files)
- Currently 32 bit support, 64 bit shouldn't be a big leap...
Preparation
PreRequisites
Set up win_python_build_tools (rospkg, vcstools, catkin-pkg, win-ros and dependencies).
- Install the following dependencies:
- Make sure you install headers, tools and compiler.
- Useful Utilities
- Extract the following archives to C:\opt
Rosdeps : boost 1.47.0, bzip2 1.06, log4cxx 0.10, tinyxml 2.6.2, eigen 3.2.1
These instructions use winros_init_workspace, winros_init_build and winros_make provided by win_python_build_tools.
Sources
Change directory to where you would like your workspace and
> mkdir C:\work > cd C:\work > winros_init_workspace --sdk-unstable ws
Once we have a stable snapshot, then the sdk-stable option will be the norm.
This simply installs the compilable sources in a workspace (under ws/src) ready for catkin building along with a setup.bat script that integrates your shell with the msvc and python environments.
Note: You have to adjust the paths in the setup.bat script to your Microsoft SDK and VC installation for setting the environment variables correctly.
Build
> cd C:\work\ws > setup > winros_init_build # Parse and edit config.cmake to configure build settings # especially CMAKE_BUILD_TYPE if you want to build Debug > winros_make # Optional install step > cd build && nmake install
Note that you can selectively build specific package targets while developing. e.g.
# Core libraries and test programs > cd C:\work\ws\build\win_ros\tutorials\win_roscpp_tutorials > nmake # Messages > cd C:\work\ws\build\common_msgs\sensor_msgs > nmake # Runtime executables (rosmaster, rostopic etc) > cd C:\work\ws\build\win_ros\msvc\msvc_runtime > nmake
Validate
Devel Space
In three shells:
> call C:\work\ws\devel\setup.bat > roscore
> call C:\work\ws\devel\setup.bat > roslaunch msvc_runtime talker.launch
> call C:\work\ws\devel\setup.bat > roslaunch msvc_runtime listener.launch
Install Space
The install space should let you run the above three shells in the same way. Simply call C:\opt\ros\groovy\x86\setup.bat instead.
Appendix - Console
Console is not necessary, but it's alot nicer than the windows command prompt.
Create some new tabs (Edit->Settings->Tabs) with names Build, Development and Install.
In each tab, use the following command for the Shell:
cmd /k C:\work\ws\setup.bat cmd /k C:\work\ws\devel\setup.bat cmd /k C:\opt\ros\groovy\x86\setup.bat
- Create desktop shortcuts with target:
_path_to_console_\console\Console.exe -t "Build" _path_to_console_\console\Console.exe -t "Development" _path_to_console_\console\Console.exe -t "Install"
These will automatically launch you into the environment of your choice.
Appendix - Troubleshooting
Windows command prompt UTF8
If you have some issues using UTF8 in windows command prompt you can fix it using the following command :
chcp 65001
Also, you need to use Lucida console fonts.