⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ldformat.gml

📁 开放源码的编译器open watcom 1.6.0版的源代码
💻 GML
📖 第 1 页 / 共 2 页
字号:
.*
.*
.dirctv FORMAT
.*
.np
The "FORMAT" directive is used to specify the format of the executable
file that the &lnkname is to generate.
The format of the "FORMAT" directive (short form "FORM") is as follows.
.mbigbox
    FORMAT form

    form ::= DOS [COM]
                 | WINDOWS [win_dll] [MEMORY] [FONT]
                 | WINDOWS VXD [DYNAMIC]
                 | WINDOWS NT [TNT] [dll_attrs]
                 | OS2 [os2_type] [dll_attrs | os2_attrs]
                 | PHARLAP [EXTENDED | REX | SEGMENTED]
                 | NOVELL [NLM | LAN | DSK | NAM | 'number'] 'description'
                 | QNX [FLAT]
                 | ELF [DLL]

    win_dll ::= DLL [INITGLOBAL | INITINSTANCE]

    dll_attrs ::= DLL [INITGLOBAL | INITINSTANCE]
                      [TERMINSTANCE | TERMGLOBAL]

    os2_type ::= FLAT | LE | LX

    os2_attrs ::= PM | PMCOMPATIBLE | FULLSCREEN
                        | PHYSDEVICE | VIRTDEVICE
.embigbox
.synote
.mnote DOS
(short form "D") tells the &lnkname to generate a DOS "EXE" file.
.np
The name of the executable file will have extension "exe".
If "COM" is specified, a DOS "COM" file will be generated in which case
the name of the executable file will have extension "com".
Note that these default extensions can be overridden by using the
"NAME" directive to name the executable file.
.np
Not all programs can be generated in the "COM" format.
The following rules must be followed.
.autonote
.note
The program must consist of only one physical segment.
This implies that the size of the program (code and data) must be less
than 64k.
.note
The program must not contain any segment relocation.
A warning message will be issued by the &lnkname each time a segment
relocation is encountered.
.endnote
.np
A DOS "COM" file cannot contain debugging information.
If you wish to debug a DOS "COM" file, you must use the "SYMFILE"
option to instruct the &lnkname to place the debugging information in
a separate file.
.if '&target' ne 'QNX' .do begin
.np
For more information on DOS executable file formats,
see the chapter entitled :HDREF refid='doschap'..
.do end
.*
.mnote WINDOWS
tells the &lnkname to generate a Win16 (16-bit Windows) executable
file.
.np
The name of the executable file will have extension "exe".
If "DLL" (short form "DL") is specified, a Dynamic Link Library will
be generated; the name of the executable file will also have extension
"exe".
Note that these default extensions can be overridden by using the
"NAME" directive to name the executable file.
.np
Specifying "INITGLOBAL" (short form "INITG") will cause Windows to
call an initialization routine the first time the Dynamic Link Library
is loaded.
The "INITGLOBAL" option should be used with "OPTION ONEAUTODATA" (the
default for Dynamic Link Libraries).
If the "INITGLOBAL" option is used with "OPTION MANYAUTODATA", the
initialization code will be called once for the first data segment
allocated but not for subsequent allocations (this is generally not
desirable behaviour and will likely cause a program fault).
.np
Specifying "INITINSTANCE" (short form "INITI") will cause Windows to
call an initialization routine each time the Dynamic Link Library is
used by a process.
The "INITINSTANCE" option should be used with "OPTION MANYAUTODATA"
(the default for executable programs).
.np
In either case, the initialization routine is defined by the start
address.
If neither "INITGLOBAL" or "INITINSTANCE" is specified, "INITGLOBAL"
is assumed.
.np
Specifying "MEMORY" (short form "MEM") indicates that the application
will run in standard or enhanced mode.
If Windows 3.0 is running in standard and enhanced mode, and "MEMORY"
is not specified, a warning message will be issued.
The "MEMORY" specification was used in the transition from Windows 2.0
to Windows 3.0.
The "MEMORY" specification is ignored in Windows 3.1 or later.
.np
Specifying "FONT" (short form "FO") indicates that the
proportional-spaced system font can be used.
Otherwise, the old-style mono-spaced system font will be used.
The "FONT" specification was used in the transition from Windows 2.0
to Windows 3.0.
The "FONT" specification is ignored in Windows 3.1 or later.
.if '&target' ne 'QNX' .do begin
.np
For more information on Windows executable file formats,
see the chapter entitled :HDREF refid='winchap'..
.do end
.mnote WINDOWS VXD
.ix 'VxD format executable'
tells the &lnkname to generate a Windows VxD file (Virtual Device Driver).
.np
The name of the file will have extension "386". Note that this default
extension can be overridden by using the "NAME" directive to name
the driver file.
.np
Specifying "DYNAMIC" (short form "DYN") , dynamicaly loadable driver will
be generated (only for Windows 3.11 or 9x). By default the &lnkname
generate staticaly loadable driver (for Windows 3.x or 9x).
.if '&target' ne 'QNX' .do begin
.np
For more information on Windows Virtual Device Driver file format,
see the chapter entitled :HDREF refid='vxdchap'..
.do end
.mnote WINDOWS NT
.ix 'PE format executable'
tells the &lnkname to generate a Win32 executable file ("PE" format).
.np
.ix 'Phar Lap TNT'
.ix 'TNT DOS extender'
If "TNT" is specified, an executable for the Phar Lap TNT DOS
extender is created.
.ix 'PL format executable'
.ix 'PE format executable'
A "PL" format (rather than "PE") executable is created so that
the Phar Lap TNT DOS extender will always run the application
(including under Windows NT).
.np
If "DLL" (short form "DL") is specified, a Dynamic Link Library will
be generated in which case the name of the executable file will have
extension "dll".
Note that these default extensions can be overridden by using the
"NAME" directive to name the executable file.
.np
Specifying "INITGLOBAL" (short form "INITG") will cause the
initialization routine to be called the first time the Dynamic Link
Library is loaded.
.np
Specifying "INITINSTANCE" (short form "INITI") will cause the
initialization routine to be called each time the Dynamic Link Library
is referenced by a process.
.np
In either case, the initialization routine is defined by the start
address.
If neither "INITGLOBAL" or "INITINSTANCE" is specified, "INITGLOBAL"
is assumed.
.np
It is also possible to specify whether the initialization routine is
to be called at DLL termination or not.
Specifying "TERMGLOBAL" (short form "TERMG") will cause the
initialization routine to be called when the last instance of the
Dynamic Link Library is terminated.
Specifying "TERMINSTANCE" (short form "TERMI") will cause the
initialization routine to be called each time an instance of the
Dynamic Link Library is terminated.
Note that the initialization routine is passed an argument indicating
whether it is being called during DLL initialization or DLL
termination.
If "INITINSTANCE" is used and no termination option is specified,
"TERMINSTANCE" is assumed.
If "INITGLOBAL" is used and no termination option is specified,
"TERMGLOBAL" is assumed.
.if '&target' ne 'QNX' .do begin
.np
For more information on Windows NT executable file formats,
see the chapter entitled :HDREF refid='ntchap'..
.do end
.mnote OS2
tells the &lnkname to generate an OS/2 executable file format.
.np
The name of the executable file will have extension "exe".
If "LE" is specified, an early form of the OS/2 32-bit linear
executable will be generated.
This executable file format is required by CauseWay DOS extender,
Tenberry Software's DOS/4G and DOS/4GW DOS extenders, and similar products.
.np
In order to improve load time and minimize the size of the executable
file, the OS/2 32-bit linear executable file format was changed.
If "LX" or "FLAT" (short form "FL") is specified, the new form of the
OS/2 32-bit linear executable will be generated.
This executable file format is required by
the FlashTek DOS extender
and 32-bit OS/2 executables.
.np
If "FLAT", "LX" or "LE" is not specified, an OS/2 16-bit executable
will be generated.
.np
If "DLL" (short form "DL") is specified, a Dynamic Link Library will
be generated in which case the name of the executable file will have
extension "dll".
Note that these default extensions can be overridden by using the
"NAME" directive to name the executable file.
.np
Specifying "INITGLOBAL" (short form "INITG") will cause the
initialization routine to be called the first time the Dynamic Link
Library is loaded.
The "INITGLOBAL" option should be used with "OPTION ONEAUTODATA" (the
default for Dynamic Link Libraries).
If the "INITGLOBAL" option is used with "OPTION MANYAUTODATA", the
initialization code will be called once for the first data segment
allocated but not for subsequent allocations (this is generally not
desirable behaviour and will likely cause a program fault).
.np
Specifying "INITINSTANCE" (short form "INITI") will cause the
initialization routine to be called each time the Dynamic Link Library
is referenced by a process.
The "INITINSTANCE" option should be used with "OPTION MANYAUTODATA"
(the default for executable programs).
.np
In either case, the initialization routine is defined by the start
address.
If neither "INITGLOBAL" or "INITINSTANCE" is specified, "INITGLOBAL"
is assumed.
.np
For OS/2 32-bit linear executable files, it is also possible to
specify whether the initialization routine is to be called at DLL
termination or not.
Specifying "TERMGLOBAL" (short form "TERMG") will cause the
initialization routine to be called when the last instance of the
Dynamic Link Library is terminated.
Specifying "TERMINSTANCE" (short form "TERMI") will cause the
initialization routine to be called each time an instance of the
Dynamic Link Library is terminated.
Note that the initialization routine is passed an argument indicating
whether it is being called during DLL initialization or DLL
termination.
If "INITINSTANCE" is used and no termination option is specified,
"TERMINSTANCE" is assumed.
If "INITGLOBAL" is used and no termination option is specified,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -