added linux compile(wip)