mirror of https://github.com/yasm/yasm.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
3.5 KiB
81 lines
3.5 KiB
.\" Title: yasm_objfmts |
|
.\" Author: Peter Johnson <peter@tortall.net> |
|
.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/> |
|
.\" Date: February 2007 |
|
.\" Manual: Yasm Supported Object Formats |
|
.\" Source: Yasm |
|
.\" |
|
.TH "YASM_OBJFMTS" "7" "February 2007" "Yasm" "Yasm Supported Object Formats" |
|
.\" disable hyphenation |
|
.nh |
|
.\" disable justification (adjust text to left margin only) |
|
.ad l |
|
.SH "NAME" |
|
yasm_objfmts \- Yasm Supported Object Formats |
|
.SH "SYNOPSIS" |
|
.HP 5 |
|
\fByasm\fR \fB\-f\ \fR\fB\fIobjfmt\fR\fR \fB\fI...\fR\fR |
|
.SH "DESCRIPTION" |
|
.PP |
|
The standard Yasm distribution includes a number of modules for different object formats (Yasm's primary output). |
|
.PP |
|
The object format is selected on the |
|
\fByasm\fR(1) |
|
command line by use of the |
|
\fB\-f \fR\fB\fIobjfmt\fR\fR |
|
command line option. |
|
.SH "BIN" |
|
.PP |
|
The |
|
\(lqbin\(rq |
|
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. |
|
.SH "COFF" |
|
.PP |
|
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. |
|
.SH "DBG" |
|
.PP |
|
The |
|
\(lqdbg\(rq |
|
object format is not a |
|
\(lqreal\(rq |
|
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. |
|
.SH "ELF" |
|
.PP |
|
The ELF object format really comes in two flavors: |
|
\(lqelf32\(rq |
|
(for 32\-bit targets) and |
|
\(lqelf64\(rq |
|
(for 64\-bit 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. |
|
.SH "MACHO" |
|
.PP |
|
The Mach\-O object format really comes in two flavors: |
|
\(lqmacho32\(rq |
|
(for 32\-bit targets) and |
|
\(lqmacho64\(rq |
|
(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. |
|
.SH "RDF" |
|
.PP |
|
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. |
|
.SH "WIN32" |
|
.PP |
|
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. |
|
.SH "WIN64" |
|
.PP |
|
The Win64 object format produces object files compatible with Microsoft compilers that target the 64\-bit |
|
\(lqx64\(rq |
|
Windows platform. This format is very similar to the win32 object format, but produces 64\-bit objects. |
|
.SH "XDF" |
|
.PP |
|
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. |
|
.SH "SEE ALSO" |
|
.PP |
|
\fByasm\fR(1), |
|
\fByasm_arch\fR(7) |
|
.SH "AUTHOR" |
|
.PP |
|
\fBPeter\fR \fBJohnson\fR <peter@tortall.net> |
|
.sp -1n |
|
.IP "" 3n |
|
Author. |
|
.SH "COPYRIGHT" |
|
Copyright \(co 2006 Peter Johnson
|
|
|