No, this is not possible.
Blender creates .blend files.
The BGE uses .blend files as input to extract certain game data from it. It does not write .blend files. I think this is the reason why it is called Blenderplayer ;).
Finally this “feature” has no use in a game. What you need is a save/load system (check the resource sub-forum). Store the games current state in a persistent or semi-persistent storage. Restore it at a later time. While doing that you need some logic that modifies the existing scene in a way that it has the structure described in your storage.
E.g. you save “I have: Cube at 3,0,0 Sphere at 0,0,1, Cylinder at 1,2,3”
On restore you kick everything out except Cube, Sphere, Cylinder and place Cube at 3,0,0, Sphere at 0,0,1, Cylinder at 1,2,3
You do not have a Cube as active object? Create a copy form the Cube at the inactive objects via addObject().
You do not have Cube as active or inactive object? Then you scene is not able to restore this save state.
Btw. The Blender engine does not “compile” anything. All it does it binds the blenderplayer with a .blend file. [This is a different step than compiling - but still part of a build]. There is no need to do that. You can run any .blend file with the blender player.
blenderplayer [--options] filename.blend