1. A computer-implemented method for installing a computer program, the method comprising: programmatically creating configuration information representing a hardware configuration of a first computer system, wherein the first computer system stores a computer program having one or more program references that depend on the hardware configuration; and installing the computer program on a second computer system, wherein said installing comprises modifying a hardware configuration of the second computer system based on the programmatically created configuration information; wherein said modifying the hardware configuration of the second computer system enables the computer program to utilize one or more hardware devices of the second computer system during execution of the computer program on the second computer system.