use exception
fixed makefile syntax