OK, if the starter drive gear just spins and doesn't actually engage the flywheel ring gear, it could be a low battery, bad connections at the battery, engine ground, or possibly the solenoid.
Could be (very common) a lack of lubrication at the area where the starter drive slides on the armature shaft.
Sometimes it gets dirty and gummed up and just won't move correctly on the shaft. Cold weather aggravates this situation. If this is the case, you might be able to get the engine tin loose enough to spray the gear end with a light lubricating oil such as WD40. Most people recommend graphite powder as a permanent lube as it doesn't attract dust and dirt as oil will.
In the first response, I forgot to mention the squealing sound with slippage. Also the bur-r-r-p sound of the dry worn bushings. You didn't have that, did you?