add Makefile and make it compitiable with linux