I had this problem with my old sierra. Check the main starter motor terminal and the starter cable and both conectors at the ends for signs of corrosion and give them a good clean up. Or even replace the cable if its realy damaged. Just make sure your getting a good electrical joint.
Bruce