compile_go util added