Can't confirm how well espeak works, since I didn't try it, but I have tried pyttsx on Windows. (pyttsx is a Python library which uses SAPI5 on Windows and espeak on Linux.)
Worked okay for me. Not tested a lot though. Here's my simple Python snippet for trying pyttsx on Windows:
http://code.activestate.com/recipes/578839-python-text-to-sp...
(A commenter on the above ActiveState recipe said my pyttsx recipe worked fine for him with espeak on Crux Linux.)
and more details on the same here:
http://jugad2.blogspot.in/2014/03/speech-synthesis-in-python...
"The pyttsx library is a cross-platform wrapper that supports the native text-to-speech libraries of Windows and Linux at least, using SAPI5 on Windows and eSpeak on Linux."
Also, check out the synthesized train announcer's voice in my blog post above - somewhat eerie and cool :)
http://jugad2.blogspot.in/2014/03/speech-recognition-with-py...
http://simulationcorner.net/index.php?page=sam
I have to admit, that the quality is not good. But it also works on embedded systems.
http://espeak.sourceforge.net/
http://hts-engine.sourceforge.net/
http://mary.dfki.de/