compiles and runs on linux