How to terminate an Amazon EC2 instance and then restore it !

June 26, 2013

Steps to create an AMI

2. Right click on the instance
3. Select “Create Image EBS AMI”
4. Fill in the “Image Name*:”. You can leave the rest blank with the default settings
5. Click on Yes, Create
6. On the left sidebar, under “Images” select “AMIs”
7. You should see the AMI you just create with the status “Pending”. Wait until it turn green and says “available” (you might need to refresh the page)
8. Now you can destroy you EC2 Instance under the Instances section.
9. Terminate the EC2 instance

Steps to restore from an AMI image

1. Make sure the region that you saved the AMI in is select in the top right. I normally work in the N. Virginia region.
2. Go to the “Images” section, then “AMIs” and right click on the image that you saved
3. Click “Launch”
4. Click “Continue” 4 times for the Instance details until you reach the “Create Key Pair” section
5. Select “Choose from your existing Key Pairs” and select the key-pair you created for the first assignment. Click “Continue”.
6. Click “Continue” for the “Configure Firewall” section
7. Click “Launch”. Your restored instance should be ready in a few moments.

Difference between AWS and Heroku

June 26, 2013

Committing new files in git submodules

June 13, 2013

You should cd to the directory where the submodule is before you can add.

Makefile .PHONY targets

June 12, 2013

Sometimes you want make to just execute some commands, without being tied to some target filename. This is when you use a “phony target”.

The document you linked to supplies the rationale:

There are two reasons to use a phony target: to avoid a conflict with a file of the same name, and to improve performance.

How to checkout a branch from github to your local repository ?

June 11, 2013

Before you can start working locally on a remote branch, you need to fetch it as called out in answers below.

To fetch a branch, you simply need to:

git fetch origin

This will fetch all of the remote branches for you. With the remote branches in hand, you now need to check out the branch you are interested in, giving you a local working copy:

git checkout -b test origin/test

However, before you can checkout the new branch. You need to stash your changed using :

git stash

git stash show


Debug symbols in C++

June 6, 2013

compile with -g option

then create the package

then you can debug the package because the memory locations will be linked to symbols