| 1 |
config BINFMT_ELF |
|---|
| 2 |
bool "Kernel support for ELF binaries" |
|---|
| 3 |
depends on MMU |
|---|
| 4 |
default y |
|---|
| 5 |
---help--- |
|---|
| 6 |
ELF (Executable and Linkable Format) is a format for libraries and |
|---|
| 7 |
executables used across different architectures and operating |
|---|
| 8 |
systems. Saying Y here will enable your kernel to run ELF binaries |
|---|
| 9 |
and enlarge it by about 13 KB. ELF support under Linux has now all |
|---|
| 10 |
but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC) |
|---|
| 11 |
because it is portable (this does *not* mean that you will be able |
|---|
| 12 |
to run executables from different architectures or operating systems |
|---|
| 13 |
however) and makes building run-time libraries very easy. Many new |
|---|
| 14 |
executables are distributed solely in ELF format. You definitely |
|---|
| 15 |
want to say Y here. |
|---|
| 16 |
|
|---|
| 17 |
Information about ELF is contained in the ELF HOWTO available from |
|---|
| 18 |
<http://www.tldp.org/docs.html#howto>. |
|---|
| 19 |
|
|---|
| 20 |
If you find that after upgrading from Linux kernel 1.2 and saying Y |
|---|
| 21 |
here, you still can't run any ELF binaries (they just crash), then |
|---|
| 22 |
you'll have to install the newest ELF runtime libraries, including |
|---|
| 23 |
ld.so (check the file <file:Documentation/Changes> for location and |
|---|
| 24 |
latest version). |
|---|
| 25 |
|
|---|
| 26 |
config BINFMT_FLAT |
|---|
| 27 |
tristate "Kernel support for flat binaries" |
|---|
| 28 |
depends on !MMU || SUPERH |
|---|
| 29 |
help |
|---|
| 30 |
Support uClinux FLAT format binaries. |
|---|
| 31 |
|
|---|
| 32 |
config BINFMT_ZFLAT |
|---|
| 33 |
bool "Enable ZFLAT support" |
|---|
| 34 |
depends on BINFMT_FLAT |
|---|
| 35 |
select ZLIB_INFLATE |
|---|
| 36 |
help |
|---|
| 37 |
Support FLAT format compressed binaries |
|---|
| 38 |
|
|---|
| 39 |
config BINFMT_SHARED_FLAT |
|---|
| 40 |
bool "Enable shared FLAT support" |
|---|
| 41 |
depends on BINFMT_FLAT |
|---|
| 42 |
help |
|---|
| 43 |
Support FLAT shared libraries |
|---|
| 44 |
|
|---|
| 45 |
config BINFMT_AOUT |
|---|
| 46 |
tristate "Kernel support for a.out and ECOFF binaries" |
|---|
| 47 |
depends on (X86 && !X86_64) || ALPHA || ARM || M68K || SPARC32 |
|---|
| 48 |
---help--- |
|---|
| 49 |
A.out (Assembler.OUTput) is a set of formats for libraries and |
|---|
| 50 |
executables used in the earliest versions of UNIX. Linux used |
|---|
| 51 |
the a.out formats QMAGIC and ZMAGIC until they were replaced |
|---|
| 52 |
with the ELF format. |
|---|
| 53 |
|
|---|
| 54 |
The conversion to ELF started in 1995. This option is primarily |
|---|
| 55 |
provided for historical interest and for the benefit of those |
|---|
| 56 |
who need to run binaries from that era. |
|---|
| 57 |
|
|---|
| 58 |
Most people should answer N here. If you think you may have |
|---|
| 59 |
occasional use for this format, enable module support above |
|---|
| 60 |
and answer M here to compile this support as a module called |
|---|
| 61 |
binfmt_aout. |
|---|
| 62 |
|
|---|
| 63 |
If any crucial components of your system (such as /sbin/init |
|---|
| 64 |
or /lib/ld.so) are still in a.out format, you will have to |
|---|
| 65 |
say Y here. |
|---|
| 66 |
|
|---|
| 67 |
config OSF4_COMPAT |
|---|
| 68 |
bool "OSF/1 v4 readv/writev compatibility" |
|---|
| 69 |
depends on ALPHA && BINFMT_AOUT |
|---|
| 70 |
help |
|---|
| 71 |
Say Y if you are using OSF/1 binaries (like Netscape and Acrobat) |
|---|
| 72 |
with v4 shared libraries freely available from Compaq. If you're |
|---|
| 73 |
going to use shared libraries from Tru64 version 5.0 or later, say N. |
|---|
| 74 |
|
|---|
| 75 |
config BINFMT_EM86 |
|---|
| 76 |
tristate "Kernel support for Linux/Intel ELF binaries" |
|---|
| 77 |
depends on ALPHA |
|---|
| 78 |
---help--- |
|---|
| 79 |
Say Y here if you want to be able to execute Linux/Intel ELF |
|---|
| 80 |
binaries just like native Alpha binaries on your Alpha machine. For |
|---|
| 81 |
this to work, you need to have the emulator /usr/bin/em86 in place. |
|---|
| 82 |
|
|---|
| 83 |
You can get the same functionality by saying N here and saying Y to |
|---|
| 84 |
"Kernel support for MISC binaries". |
|---|
| 85 |
|
|---|
| 86 |
You may answer M to compile the emulation support as a module and |
|---|
| 87 |
later load the module when you want to use a Linux/Intel binary. The |
|---|
| 88 |
module will be called binfmt_em86. If unsure, say Y. |
|---|
| 89 |
|
|---|
| 90 |
config BINFMT_SOM |
|---|
| 91 |
tristate "Kernel support for SOM binaries" |
|---|
| 92 |
depends on PARISC && HPUX |
|---|
| 93 |
help |
|---|
| 94 |
SOM is a binary executable format inherited from HP/UX. Say |
|---|
| 95 |
Y here to be able to load and execute SOM binaries directly. |
|---|
| 96 |
|
|---|
| 97 |
config BINFMT_MISC |
|---|
| 98 |
tristate "Kernel support for MISC binaries" |
|---|
| 99 |
---help--- |
|---|
| 100 |
If you say Y here, it will be possible to plug wrapper-driven binary |
|---|
| 101 |
formats into the kernel. You will like this especially when you use |
|---|
| 102 |
programs that need an interpreter to run like Java, Python, .NET or |
|---|
| 103 |
Emacs-Lisp. It's also useful if you often run DOS executables under |
|---|
| 104 |
the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from |
|---|
| 105 |
<http://www.tldp.org/docs.html#howto>). Once you have |
|---|
| 106 |
registered such a binary class with the kernel, you can start one of |
|---|
| 107 |
those programs simply by typing in its name at a shell prompt; Linux |
|---|
| 108 |
will automatically feed it to the correct interpreter. |
|---|
| 109 |
|
|---|
| 110 |
You can do other nice things, too. Read the file |
|---|
| 111 |
<file:Documentation/binfmt_misc.txt> to learn how to use this |
|---|
| 112 |
feature, <file:Documentation/java.txt> for information about how |
|---|
| 113 |
to include Java support. and <file:Documentation/mono.txt> for |
|---|
| 114 |
information about how to include Mono-based .NET support. |
|---|
| 115 |
|
|---|
| 116 |
To use binfmt_misc, you will need to mount it: |
|---|
| 117 |
mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc |
|---|
| 118 |
|
|---|
| 119 |
You may say M here for module support and later load the module when |
|---|
| 120 |
you have use for it; the module is called binfmt_misc. If you |
|---|
| 121 |
don't know what to answer at this point, say Y. |
|---|