for pull
compiling server, should have basic functionality, not tested