GPSs are an awesome tool. Much better than a compass as it can tell you where you are exactly as well as how far it is to various places and a whole host of great information. However, a GPS has its drawbacks. The most important one for our purposes is that a GPS requires power in the form of batteries. In a SHTF situation your GPS will only last for a day... and not even that long if the Satellites have been taken out.
Point being eventually you will not be able to rely on the GPS and a compass is a marvelous tool to help with SHTF navigation. You should own a compass and if you don't you should go buy one. OKAY, done. But even though a compass requires no electricity it is still subject to being accidentally broken, lost or stolen. So like with most after the SHTF situations knowledge is the key. You need to know how to make a compass from scratch. Hopefully you will not need to do this but if you survive an apocalypse you eventually will need this knowledge.
To make a homemade compass the first component you will need is a compass needle. A compass needle must be made of a metal that can be magnetized. The favorite material for a homemade compass needle is a sewing needle. But, a metal paper clip, a safety pin or hair pin can also be used. Basically any metal that can be magnetized can serve as a compass needle. The Best candidate is anything made of iron or a magnet. Others include Nickel (not a coin called a nickel), cobalt and some rare earths like neodymium.
If your compass needle material is not a magnet you will need to magnetize it. Fortunately, this is relatively easy to do. To magnetize an item simply rub it with silk, fur or hair. This will build up a static charge in the item which magnetizes it for a while. Of course if you have a magnet you can easily use the magnet to magnetize your compass needle as well. To magnetize your compass needle stroke the compass needle in the same direction. Do not rub it back and forward.
The next item you will need is a float for the needle. The bigger and heavier the item is the harder it will be for the magnetic field to move the float. So you ideally want something as light as possible that has enough buoyancy to float your compass needle with the needle sinking or riding so low that the needle touches the water. Classically the needle float can be a piece of cork shaped like a coin, but things such as leaves can work as well.
Now simply place your compass needle material on top of the cork so that it is balanced in the middle. Place the compass needle and a float in a bowl of water. It actually doesn't need to be a bowl of water, any body of water that has no current will do. For the compass to work properly the compass needle must also be completely protected from wind and breezes. Wind will place forces on the needle that are stronger than the magnetic forces. Therefore, you must eliminate all wind as well as any currents. The large bodies of water such as a pond are not often good choices because air movement across the surface can induce weak currents in the water which will end up giving you false readings on your compass. However, something smaller like a mud puddle protected from the wind can work.
To use your compass simply place the magnetized metal on its float and place it in a breeze free area in water. The magnetized needle will be acted on by the earth's magnetic field and cause the needle to align itself with the earth's magnetic field and point to magnetic north. Recognize that magnetic north is not the same as true north, but will be close enough for crude purposes in most places. A general rule is that the further north you go the more likely it is that magnetic North and true north can be significantly different.
The difference is only important when using existing maps. Otherwise, it doesn't really matter if your compass is off significantly just as long as you only use it and nothing else like maps in conjunction with it. For example, if you head West according to your compass for one hour and then head back East for one hour you will arrive back at your starting point no matter how far off your compass is from true North.
Compasses will vary from true North depending on your location, but this is fortunately for us only from 0-15 degrees in most places, but can be as much as 30 degrees or more.
A side note is that this offness, known as declination is not a constant, but instead very very slowly drifts around over your lifetime.
So is your compass pointing North or South? You will not know the difference without knowing what is North already. Luckily it is easy to determine since the sun always rises in the East. So if you face the rising sun North will be somewhere to your left.
I hope this helps! If you have anything you would like to change or add then let me know! I am always open to suggestions.