Glossary · Automation software engineering and architecture
Object code
Also known as: Object file
German: Objektcode
In software engineering, object code is the machine code or intermediate code produced by a compiler or assembler from source code, typically not yet linked into an executable program.
- Software engineering
In one sentence
Object code is machine or intermediate code a compiler produces from source code, usually before it is linked into an executable.
Example
The compiler translates each C file of the drive firmware into object code, and the linker combines the object files with the libraries into the firmware image.
How it applies
- Engineering: Object code depends on the compiler, its version and options. Reproducible builds require recording them, so the same Source code yields the same object code.
- Delivery: Libraries are sometimes delivered as object code only, to protect know-how. Users then depend on the vendor for fixes, and compatibility with their toolchain version must be documented.
- Documentation: Release documentation should identify delivered binaries by version and checksum and state which source version and toolchain produced them, which supports the Configuration baseline.
Object code vs. executable file
Object code is an intermediate result that may contain unresolved references to other modules. The Linker resolves them and produces an Executable file or firmware image that can be loaded and run.