Source files are input to the host language compiler, which produces object files as output. The object files are next linked by the host linker, with the OCI Library, which outputs the application executable. The application then can communicate with the Oracle Server.