Extra debugging messages that are normally sent to stderr are also off for regular use as a program. If you'd like to see those messages, then make sure the symbol ``DEBUGGING'' is defined, for example, insert the line -DDEBUGGING=1 into the CFLAGS line of the Makefile. Then the program will compile with extra debugging messages letting you know what it's doing at any given time. Also, for a given version, defining TEMP_DEBUGGING will spit out debugging messages that have been recently added and so on. Finally, if you're paranoid about the way that keysym_callback() is working, (it is what drives the insertion of text into output_text widget) then define CONSOLE_OUTPUT and it will spit diagnosticts to stdout and stderr as it's needed. To enable all possible ugliness in the code, put the following in the CFLAGS variable in the top level Makefile: -DCONSOLE_OUTPUT=1 -DDEBUGGING=1 -DTEMP_DEBUGGING=1 -DV_DEBUGGING=1 and recompile. Also, if you define GUI_EVERYTHING in app.c, then write success/error messages will pop up in their own windows rather than just in the status buffer.