Geodesy Foundation Classes - Simple C++ library for doing basic navigation calculations.
This library let's you set an ellipsoid and caclulate the surface distance between two points on the globe. You can also calculate headings between two points, find out how far off course your current position is from a line between two other points, etc.