I have been told that you need to create a texture atlas for the font, and individually assign each character to a texture and add them up to create the string you want to produce. This seems a little more difficult than it should be. Is there another way? If not there must be documentation or a library someone wrote to do this. Can someone help me out?
You don't have to do it that way. That just happens to be one of the easier solutions that also give good results. You can also attempt to compile a font down to outlines and render those, but that's a lot harder. Note that what you're saying isn't that difficult because you can do it mostly automatically.
And yes, there are libraries that already implement most of that. Just google OpenGL font rendering libraries - you'll have to figure out on your own which of these is appropriate for your use case (e.g. what kind of OpenGL profile are you targeting, what kind of languages do you need to support etc etc).