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_rosinstall.
Install the following dependencies - these will move into appupdater later.
- Useful Utilities
- Extract the following archives to C:\opt
Rosdeps : boost 1.47.0, bzip2 1.06, log4cxx 0.10
WinRos Build Script
> mkdir C:\work > cd C:\work > wget --no-check-certificate https://raw.github.com/stonier/win_ros/master/msvc/msvc_sdk/scripts/fuerte/winros.bat
Check that the variables in C:\work\winros.bat are appropriate (defaults should work). It is also a good idea to look inside to see what is actually going on.
Build and Install
Sources
Install sources into C:\work\sdk and patch.
If you want to download the latest sources, change the BUILD variable to unstable in winros.bat (ymmv).
> cd C:\work > winros sdk download
If no rosinstall is found, redo win_rosinstall - there was a recent change for v0.6.17.
Confirm that C:\work\sdk\setup.bat looks ok.
Importantly, note that it calls the windows compiler environment at the end - this can be used to modify whether you are using debug/release c/c++ libs and whether you are compiling for x86 or x64.
Build
# CMake configure step > winros sdk configure # Compile step via nmake > winros sdk build
Note that you can selectively build specific package targets while developing. e.g.
# Core libraries and test programs > cd C:\work\build_sdk\win_ros\tutorials\win_roscpp_tutorials > nmake # Messages > cd C:\work\build_sdk\common_msgs > nmake # Runtime executables (rosmaster, rostopic etc) > cd C:\work\build_sdk\win_ros\msvc\msvc_runtime > nmake
Binaries, dll's, libs, headers are scattered throughout the build and source directories - you can run and test inside this buildspace but if you want to use the libs/headers separately, the easiest way to gather these together is via the install step (again, refer to the Install section further down).
Usage
In three separate shells:
> call C:\work\build_sdk\env.bat > roscore
> call C:\work\build_sdk\env.bat > roslaunch msvc_runtime talker.launch
> call C:\work\build_sdk\env.bat > roslaunch msvc_runtime listener.launch
Install Environment
Installation
By default, this will install to C:\opt\ros\fuerte\x86. See winros.bat if you want to modify the install location. The following just runs nmake install in the build directory.
> winros sdk install
Usage
In three separate shells:
> call C:\opt\ros\fuerte\x86\env.bat > roscore
> call C:\opt\ros\fuerte\x86\env.bat > roslaunch msvc_runtime talker.launch
> call C:\opt\ros\fuerte\x86\env.bat > roslaunch msvc_runtime listener.launch
Console
Console is not necessary, but it's alot nicer than the windows command prompt.
Create some new tabs (Edit->Settings->Tabs) with names Catkin, Build and Runtime.
In each tab, use the following command for the Shell:
cmd /k C:\work\sdk\setup.bat cmd /k C:\work\build_sdk\env.bat cmd /k C:\opt\ros\fuerte\x86\env.bat
- Create desktop shortcuts with target:
_path_to_console_\console\Console.exe -t "Catkin" _path_to_console_\console\Console.exe -t "Build" _path_to_console_\console\Console.exe -t "Runtime"