While linking there can be an issue for multiple memory spaces in Motorola and Intel-hex file(s).
Error[e133]: The output format motorola cannot handle multiple address spaces. Use format variants (-y -O) to specify which address space is wanted.
Output formats that do not support more than one memory space like Motorola and Intel-hex might require up to one output file per memory space. This causes no problems if you are only producing output to one memory space (flash), but if you also are placing objects in eeprom or an external rom in data memory space, the output format cannot represent this, and the linker will issue the above error.
When using only one output format for example motorola, you need to have one output file per memory space.
When using an extra output format, for example ubrof8 and Intel-standard you can not use the option "Extra Output" for the Intel-standard if you also are placing objects in eeprom .
The solution is:
-Ointel-standard,(CODE)=flash.hexTo produce output for the other memory space for example the eeprom space, enable the option Project> Options> Linker> Extra options >>"Use command line options" and write
All product names are trademarks or registered trademarks of their respective owners.