Skip to content

Setting Up Your Build Environment

RobotGymnast edited this page Sep 14, 2010 · 8 revisions

Introduction

In order to play around with the GunZ server emulation, you’re going to need to build it from source! This isn’t as hard as it seems, and the wonderful folks at CMake try to make it as painless as possible.

Details

  1. Get and install CMake, Git, Boost, MySQL, and MySQL++.
  2. OPTIONAL: On windows, you can use TortoiseGit if you really want your GUI.
  3. You need the source code. Open up your terminal/command prompt and go to the folder you wish to download GoGo into.
  4. Log into GitHub. Make an account and get everything set up if you haven’t already.
  5. Hit the fork button and fork this project. (fork yeah!)
  6. Type git clone git@github.com:[your username]/GoGo.git . in the directory you want to check GoGo out into.
  7. Type cd build.
  8. Type cmake. This will give you a list of valid generators at the bottom of the screen.
  9. Select the generator you like most and then type cmake .. -G "MY FAVORITE GENERATOR NAME HERE". This will put your generated native build files in the build/ directory. Optionally, you can use cmake -D CMAKE_BUILD_TYPE=[Debug|Release] .. -G "BlahBlah" where the build type is either debug OR release to specify which you wish to generate makefiles for. On Windows, this is unnecessary.
  10. Use your native build toolchain to build the files in your $PROJECT_ROOT/build directory to make GoGo.
  11. Go back into your build directory and type ./test.[bat|sh] (use .bat on windows, .sh on Linux) to run the test suite. Make sure they all pass, and submit a bug report if they don’t.

Footnote

Don’t forget, when modifying the project, don’t edit the native build files – edit the CMakeLists.txt’s. That way, the changes will propagate across all build systems and computers other than your own.

Also, now you’re in a position to push your changes into your own repository. When you’re ready to submit them back to the main branch, just click the “Pull Request” button in your own branch. This can be found at http://github.com/[your username]/GoGo. This will alert us that you have some code we may be interested in. This is how you’ll eventually become an official member of the gogo-dev team!

Clone this wiki locally