create makefile, cross platform compiling