www.LinuxHowtos.org
YASM_OBJFMTS
Section: Yasm Supported Object Formats (7)Updated: February 2007
Index Return to Main Contents
NAME
yasm_objfmts - Yasm Supported Object FormatsSYNOPSIS
- yasm -f objfmt ...
DESCRIPTION
The object format is selected on the yasm(1) command line by use of the -f objfmt command line option.
BIN
The lqbinrq object format produces a flat-format, non-relocatable binary file. It is appropriate for producing DOS .COM executables or things like boot blocks. It supports only 3 sections and those sections are written in a predefined order to the output file.
COFF
The COFF object format is an older relocatable object format used on older Unix and compatible systems, and also (more recently) on the DJGPP development system for DOS.
DBG
The lqdbgrq object format is not a lqrealrq object format; the output file it creates simply describes the sequence of calls made to it by Yasm and the final object and symbol table information in a human-readable text format (that in a normal object format would get processed into that object format's particular binary representation). This object format is not intended for real use, but rather for debugging Yasm's internals.
ELF
The ELF object format really comes in three flavors: lqelf32rq (for 32-bit targets), lqelf64rq (for 64-bit targets and lqelfx32rq (for x32 targets). ELF is a standard object format in common use on modern Unix and compatible systems (e.g. Linux, FreeBSD). ELF has complex support for relocatable and shared objects.
MACHO
The Mach-O object format really comes in two flavors: lqmacho32rq (for 32-bit targets) and lqmacho64rq (for 64-bit targets). Mach-O is used as the object format on MacOS X. As Yasm currently only supports x86 and AMD64 instruction sets, it can only generate Mach-O objects for Intel-based Macs.
RDF
The RDOFF2 object format is a simple multi-section format originally designed for NASM. It supports segment references but not WRT references. It was designed primarily for simplicity and has minimalistic headers for ease of loading and linking. A complete toolchain (linker, librarian, and loader) is distributed with NASM.
WIN32
The Win32 object format produces object files compatible with Microsoft compilers (such as Visual C++) that target the 32-bit x86 Windows platform. The object format itself is an extended version of COFF.
WIN64
The Win64 object format produces object files compatible with Microsoft compilers that target the 64-bit lqx64rq Windows platform. This format is very similar to the win32 object format, but produces 64-bit objects.
XDF
The XDF object format is essentially a simplified version of COFF. It's a multi-section relocatable format that supports 64-bit physical and virtual addresses.
SEE ALSO
AUTHOR
Peter Johnson <peter@tortall.net>
- Author.
COPYRIGHT
Copyright © 2006 Peter Johnson