Skip to content
This repository has been archived by the owner on Apr 6, 2023. It is now read-only.

Setting Up Your CoApp Development Environment

voltagex edited this page Nov 5, 2011 · 15 revisions

Setting up you CoApp development environment requires the following steps. Instructions for completing each step follow later in this document.

  1. Install a Windows IDE or C compiler, such as Visual Studio or MingW
  2. Install Windows SDK 7.1 (Note: you may have to untick the compiler install as part of this OR install it before Visual Studio)
  3. Install the WiX Toolset (3.5 for now)
  4. Install PuTTy
  5. Install git
  6. Create your private security key (todo, link to instruction page on generating and loading a key)
  7. Install Pageant
    7.0 Load your key that you generated in step 6
    7.1 Set Git to use Plink as your SSH client
    7.2 Run plink against GitHub to cache the hostkey
  8. Clone the git repositories you want to work on
  9. Dive in (todo, write this) - which solution to open?

Optional steps:

  1. Install a good text editor, such as Notepad++
  2. Install the Chrome browser to monitor CoApp issue tracking
    - you can use the GitHub issues interface at http://githubissues.heroku.com/ however at the time of writing it was fairly unstable

Install a Windows IDE or C compiler

The single most important tool for creating Windows-optimized binaries, whether they be libraries or applications, is Visual Studio, but you can use open source alternatives, such as MingW.

Installing Visual Studio

Install Visual Studio 2010 (the express version will do - http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express). We recommend that you do a default install.

Installing MingW

You can find the directions for installing MingW here: https://github.com/coapp/coapp.org/wiki/Installing-MingW

Install Windows SDK 7.1

Install Windows SDK 7.1 from http://msdn.microsoft.com/en-us/windows/bb980924

Install the WiX Toolset

Find the latest download at: http://wix.codeplex.com/releases/view/60102#DownloadId=204417

Install PuTTy

PuTTY is an open source terminal emulator that can act as a client for SSH. You need this for public key authentication.

Find the latest download at: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Install git

Git is the distributed reversion control system. You need this because CoApp uses it for managing source code. To install it:

From http://code.google.com/p/msysgit/downloads/list

  1. Click on Git-1.7.6-preview20110708.exe
  2. Run the .exe file

Create Your Private Security Key

GitHub uses SSH to create secure channels between it and you. To create your private security key:

  1. Create it on GitHub
  2. Copy the files githubkey and githubkey.ppl to your home directory on your development machine.

Install Pageant

  • Make sure you've created a key pair, added the public key to your GitHub account and then added the private key to Pageant

Clone the Git Repositories You Want to Work On

Use the checkout script to automatically grab/update from our repositories If this is your first checkout, grab the script from http://coapp.org/coapp-src.cmd

Install Notepad++

Grab a copy of the installer from http://notepad-plus-plus.org/download/v5.9.3.html

Tracking CoApp Issues from Chrome

An extension for Chrome that improves GitHub's issues interface is available from https://chrome.google.com/webstore/detail/oaianekphgmiibhdffnoimngeolnailp

Troubleshooting

  • Huh? The Git setup didn't ask me about Putty or Plink!

    • This happens sometimes when you haven't used Putty on the machine before - you can workaround it by setting

Todo: investigate how the Git installer is detecting this, and make it better

  • When I try to do a checkout, github.com disconnects on me!

    • If you see "fatal: The remote end hung up unexpectedly", open up PuTTY and connect to github.com. You'll get a message saying that the host key is not cached in the registry. Click yes.

    • Check that you loaded your private key into Pageant

A full Git & SSH guide is available over on GitHub's help page

Clone this wiki locally