Upon reception of a first compilation command that contains an instruction for executing link time optimization, the apparatus generates a first object file that contains source-code information including a source code and does not contain an object code. Upon reception of a first link command that contains the instruction for executing the link time optimization, the apparatus generates the object code by executing the link time optimization and compilation on the source code information contained in the first object file, and generates a second object file that contains the generated object code. Upon reception of a second link command that does not contain an instruction for executing the link time optimization, the apparatus generates the object code by executing the compilation on the source code information contained in the first object file, and generates a third object file that contains the generated object code.