compile for all platforms