work on darwin
fix makefile
windows