• 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...



These instructions use winros_init_workspace, winros_init_build and winros_make provided by win_python_build_tools.


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.


> 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


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. {i}

  • 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.

Wiki: win_ros/groovy/Msvc Compiled SDK (last edited 2013-10-04 05:33:25 by DanielStonier)