Sometimes I do not have the option to configure settings for the Loader, Linker or Archiver. Why is this?
While the Compiler and Assembler pages are available for all Build Artifacts, the availability of the Loader, Linker and Archiver settings pages under “Project: Properties: C/C++ Build: Settings” depend on the “Artifact Type” selected under the “Built Artifact” tab.
The Linker is invoked when producing a DXE Executable file, so its settings page will be available when the Build Artifact is set to either “Executable” or “Loader File”.
The Loader is only invoked when producing an LDR Loader file, so its settings page will be available only when the Build Artifact is set to “Loader File”.
The Archiver is invoked when producing a Library file. When this is the case, the Compiler and Assembler are invoked to produce object files, however the Linker is not required for a Library file so its settings page is not available. Instead the Archiver is invoked to collate the object files into a library, so its settings page will be available when the Build Artifact is set to “Static Library”.