The function global_initilize, initialize_character are declared but not define in hello.c. I think your program hello.c is depending on a library ("spl" library?) which is not included in your compile command.
You should have one of the following:
gcc hello.c whatever_file_who_define_undefined_function.c
gcc hello.c -lwhatever_lib_that_define_undefined_function.so
EDIT :
http://shakespearelang.sourceforge.net/report/shakespeare/#SECTION00070000000000000000 you need to include libspl.a library to make it work
So your compile option should be the following:
gcc hello.c -Ipath/to/spl/include/ -Lpath/to/spl/library -llibspl.a
-I
option to specify where your spl.h file is located-L
option to specify where your libspl.a is located-l
option to specify which library to use
or (*.a is static library, so it can be handle like a object file)
gcc hello.c -Ipath/to/spl/include/ path/to/spl/library/libspl.a