-
Notifications
You must be signed in to change notification settings - Fork 0
Setting up a Windows 7 Development Environment
This is a step by step guide on setting up the development environment for the software that runs on the Kraken as well as the Dashboard interface software.
This guide is based on and tested with Windows 7 64-bit.
In order to properly compile and run the Dashboard and Commander software components you will need to install the following development tools:
- Visual C++ 2010 Express
- Qt 5.1.1
- GitHub for Windows
Visual C++ 2010 Express is a free edition of the Microsoft Visual C++ IDE and compiler. The Kraken software utilizes the Qt framework and is developed in Qt Creator, however Qt does not come with a compiler. Other compilers and other versions of Visual C++ Express might work with Qt 5.1.1, however I have not tested any on the Windows operating system. For more information about Visual C++ Express visit http://www.microsoft.com/visualstudio/en-us/express-cpp/overview.
The Qt 5.1.1 software consists of the Qt Framework, QMake, Qt Creator IDE and the Qt documentation. All of the software components with the exception of Navbox heavily utilize the Qt libraries and are built utilizing the QMake system. QMake is similar to CMake in that it facilitates the generation of Makefiles customized for the targets Operating System. The configuration put into place inside of the QMake files is what allows the code to compile without modifications on any platform with the proper development environment. The QMake files are also the project files that allow you to open all of the source code files in the Qt Creator IDE. For more information about Qt visit http://qt-project.org/.
GitHub for Windows is an Git client that integrates with GitHub. This will allow you to download the latest source code revision for the software components, view all of the changes you have made and upload your changes to our code repository. For more information about GitHub for Windows, please visit http://windows.github.com/. Software Installation
Open a web browser and navigate to http://www.microsoft.com/visualstudio/eng/downloads#d-2010-express. Click the blue ‘Visual C++ 2010 Express’ bar, then the blue '>' button on the left side of the page to begin the download of a file named vc_web.exe. Once this file has downloaded run the vc_web.exe program to start the Visual C++ 2010 Express installer. Navigate through the installation as you would any other program, all of the default options are fine.
NOTE: When downloading Visual Studio Express 2010, do not download "Visual Studio Express 2012 for Windows Desktop" when prompted. This is not needed for working on our code.
Open a web browser and navigate to http://qt-project.org/downloads. Click the green text “Qt 5.1.1 for Windows 32-bit (VS 2010, 505 MB)” to begin the download. Once the download is completed run the executable file to launch the Qt Setup application. Navigate through the installation as you would any other program, all of the default options are fine.
NOTE: Do not download Qt 5.1.1 for Windows 64-bit (VS 2012), even if you have Visual C++ 2012 you will not be able to compile the code from our repository.
NOTE: Do not download Qt 5.1.1 for Windows 32-bit (MinGW) as it will not link with out precompiled libraries.
Open a web browser and navigate to http://windows.github.com/ and click the big green "Download GitHub for Windows" button. Run the installer and wait for it to finish. Once done, it will start the program. Enter your GitHub username and password if you have a GitHub account. If not, click the "Sign Up" link at the bottom of the text. This will open your web browser. Click the green "Create a free account" button, fill out the form, create your account, return to the GitHub for Windows program, and enter your new account info. In the next screen, enter your full name and your email address then click "Continue". Click the "Dashboard" link and you are done.
This portion of the guide will demonstrate how to download the source code for the Commander software component. The steps will be identical for downloading Dashboard or Navbox with the exception of changing the repository URL and the destination folder.
Open GitHub for Windows and click on your account name under "GitHub" on the left side of the program. If you have been added to the project repository, it will appear in the center of the screen. Hover over the repository and click the "Clone" button that appears. The project has now been downloaded to the default location of C:\Users\SDCR\Documents\GitHub\Commander. (You can change this location by clicking the "Options" item under the "Tools" menu. Change the "Default Storage Directory" to wherever you want to store the code.) Compiling with Qt Creator
Now that you have a working copy of the source code for one of the software components it is time to compile it in Qt Creator. Navigate to the directory containing your working copy, in my case C:\Users\SDCR\Documents\GitHub\Commander. Double click on Commander.pro to open the project in Qt Creator. Upon opening the project for the first time you will see a Configure window, just click the Configure Project button on the lower right side. In the menu select Build then Build Project “Commander”. This will start the compilation process for all of the sub components that make up the Commander software component. If everything was successful you should see no errors in the bottom window (currently you may see a few warnings). All of the Makefiles and executable generated by Qt will be in outside of your source code directory, such as C:\Users\SDCR\Documents\GitHub\Commander-build*.
If you have any problems with this process or corrections to this guide please email me at [email protected] or contact me via the SD City Robotics website.
I uninstalled all of the software development utilities on my Windows 7 laptop to conduct a fresh installation as a test while writing this guide. The directions in this guide worked without modification, however my laptop has previous been setup with more software development tools that I can remember, there is a chance that I have missed a step and it happened to not cause a problem on my laptop. If you notice anything that does not work please let me know.