Smlrl: Difference between revisions

From OSDev Wiki
Jump to navigation Jump to search
(Created page with "'''The Smaller C Linker''' (smlrl) comes with the Smaller C compiler. == About == === Advantages === * Free * Supported input formats: ELF (for both 16-bit and 32-bit...")
(→‎Disadvantages: Relocations are now supported in PEs.)
Line 11: Line 11:
=== Disadvantages ===
=== Disadvantages ===
* No 64-bit support
* No 64-bit support
* Produces non-relocatable (削除) [[PE]] and (削除ここまで)[[ELF]] for a given or default address (however, [[a.out]] (削除) is (削除ここまで)relocatable)
* Produces non-relocatable [[ELF]] for a given or default address (however, (追記) [[PE]] and (追記ここまで)[[a.out]] (追記) are (追記ここまで)relocatable)
* May not work with ELF files produced by anything other than [[NASM]], [[YASM]], [[FASM]]
* May not work with ELF files produced by anything other than [[NASM]], [[YASM]], [[FASM]]
* Strips debugging information
* Strips debugging information

Revision as of 07:07, 1 July 2016

The Smaller C Linker (smlrl) comes with the Smaller C compiler.

About

Advantages

  • Free
  • Supported input formats: ELF (for both 16-bit and 32-bit code)
  • Supported output formats: COM, MZ, PE, ELF, a.out, flat
  • Can set the code address
  • Supports .a (ELF) library files

Disadvantages

  • No 64-bit support
  • Produces non-relocatable ELF for a given or default address (however, PE and a.out are relocatable)
  • May not work with ELF files produced by anything other than NASM, YASM, FASM
  • Strips debugging information
  • Can't create shared libraries

See Also

External

Retrieved from "https://wiki.osdev.org/index.php?title=Smlrl&oldid=19389"