- fix up configure options table
This commit is contained in:
parent
fea759a204
commit
497e4a5227
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
================================================================
|
||||
doc/docbook/user/user.dbk
|
||||
$Id: user.dbk,v 1.15 2001-11-13 07:00:09 bdenney Exp $
|
||||
$Id: user.dbk,v 1.16 2001-11-14 01:45:47 bdenney Exp $
|
||||
|
||||
This is the top level file for the Bochs Users Manual.
|
||||
================================================================
|
||||
@ -512,6 +512,13 @@ Steve Chamberlain and now maintained by RedHat. Download it from--you guessed i
|
||||
&devlist;. </entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry>Amiga MorphOS</entry>
|
||||
<entry>
|
||||
This port is written and maintained by Nicholai Benalal.
|
||||
</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry>OS/2</entry>
|
||||
<entry> Nick Behnken used PE2LX to translate David Ross's Win32
|
||||
@ -1197,12 +1204,12 @@ How to build an RPM in Linux
|
||||
|
||||
<section id="config-opts"><title>Configure Options</title>
|
||||
<para>
|
||||
This section describes the configure options for Bochs. The first,
|
||||
and perhaps most important option is <option>--help</option>, since it
|
||||
gives you a list of all the other options. The options in the first table
|
||||
choose which GUI library to use. The default is <option>--with-x11</option>
|
||||
so if you don't include <option>--with-*</option> it will try to compile for X
|
||||
windows.
|
||||
This section describes the configure options for Bochs. Perhaps the
|
||||
most important option is <option>--help</option>, since it gives you a list of
|
||||
all the other options. The options in the first table choose which GUI library
|
||||
to use. The default is <option>--with-x11</option> so if you don't include
|
||||
<option>--with-*</option> it will try to compile for X windows.
|
||||
</para>
|
||||
|
||||
<table><title>Configure Options to select the GUI</title>
|
||||
<tgroup cols=3>
|
||||
@ -1217,8 +1224,8 @@ windows.
|
||||
<row>
|
||||
<entry>--with-x11</entry>
|
||||
<entry>yes</entry>
|
||||
<entry>Use X11 GUI. This is the default and you don't need
|
||||
this option if you are using X11.</entry>
|
||||
<entry>Use X windows user interface. This is the default, so you
|
||||
never actually need to type it.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-win32-vcpp</entry>
|
||||
@ -1226,8 +1233,30 @@ windows.
|
||||
<entry>Use Win32 GUI/Visual C++ environment. This is for running
|
||||
configure on a platform which supports running configure, so
|
||||
that you may then transfer the configured code over to
|
||||
an MS Win32/Visual C++ environment.</entry>
|
||||
an MS Win32/Visual C++ environment. See
|
||||
<xref linkend="compiling-win32"> for details.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-win32</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Use Win32 GUI, but compile with a Win32/gcc
|
||||
environment such as cygwin. For cygwin, see .conf.win32-cygwin
|
||||
for the correct compile options.
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-carbon</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Compile for MacOS X with the Carbon GUI. See the
|
||||
.conf.macosx file for the correct MacOS X compile options.
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-amigaos</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Compile for Amiga MorphOS. This code is written by Nicholai
|
||||
Benalal.</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry>--with-rfb</entry>
|
||||
<entry>no</entry>
|
||||
@ -1236,30 +1265,30 @@ windows.
|
||||
code was written by Don Becker <email>x-odus@iname.com</email>,
|
||||
who has a Bochs-RFB web page on his site,
|
||||
<ulink url="http://www.psyon.org/bochs-rfb/">http://www.psyon.org/bochs-rfb</ulink>.
|
||||
RFB mode has been tested in Linux and Win32.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-beos</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Use BeOS GUI. The configure script will run natively
|
||||
on BeOS; use this option when doing so.</entry>
|
||||
on BeOS; use this option when doing so.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-term</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Use text-only gui with curses library.
|
||||
<entry>Use text-only gui with curses library. Almost certainly
|
||||
won't work right with the debugger or the control panel.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-macos</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Use Macintosh/CodeWarrior environment</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-win32</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Use Win32 GUI, but compile with a Win32/gcc
|
||||
environment. This is used with cygwin.
|
||||
<entry>Use Macintosh/CodeWarrior environment. This is for running
|
||||
configure on a platform which supports running configure, so that
|
||||
you may then transfer the configured code over to the
|
||||
real compile environment. (Hasn't been tested in a long time.)
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--with-nogui</entry>
|
||||
@ -1272,6 +1301,12 @@ windows.
|
||||
</tgroup>
|
||||
</table>
|
||||
|
||||
<para>
|
||||
The remaining options can generally be used with any GUI. For each option
|
||||
such as --enable-cdrom, you can also write --disable-cdrom to explicitly
|
||||
turn it off.
|
||||
</para>
|
||||
|
||||
<table><title>Frequently Used Configure Options</title>
|
||||
<tgroup cols=3>
|
||||
<thead>
|
||||
@ -1286,23 +1321,9 @@ windows.
|
||||
<entry>--enable-cpu-level={<option>3,4,5,6</option>}</entry>
|
||||
<entry>5</entry>
|
||||
<entry>
|
||||
Select which CPU level to emulate. Choices are 3,4,5,6 which mean target
|
||||
386, 486, Pentium, or Pentium Pro emulation. Pentium Pro support is
|
||||
quite incomplete.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-processors={<option>1,2,3,...,15</option>}</entry>
|
||||
<entry>1</entry>
|
||||
<entry>
|
||||
By changing to more than 1 processor, you enable SMP simulation. This
|
||||
allows you to boot Linux and maybe other OSes in SMP mode, and bochs will
|
||||
simulate all the different CPUs and communication between them. Do not
|
||||
expect this option to speed up your simulation! On the contrary, it has
|
||||
to spend extra time simulating the different CPUs (even if they're mostly
|
||||
idle) and the communication between them. Use it to try out an SMP OS if
|
||||
you don't have an SMP machine, or to debug your SMP OS drivers. Click
|
||||
here &FIXME; for more details on SMP in Bochs.
|
||||
Select which CPU level to emulate. Choices are 3,4,5,6 which mean to
|
||||
target 386, 486, Pentium, or Pentium Pro emulation. Pentium Pro support
|
||||
is quite incomplete, so level 5 is the best choice for now.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
@ -1330,6 +1351,92 @@ windows.
|
||||
more info.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-control-panel</entry>
|
||||
<entry>yes</entry>
|
||||
<entry>
|
||||
Enables text-mode configuration menus when you first start Bochs. The
|
||||
menus let you read in a bochsrc file, edit some options, and safe the new
|
||||
bochsrc before starting the simulation. Also enables a runtime
|
||||
menu (controlled by a Config button on the Bochs display) which
|
||||
lets you change certain settings during simulation. The control panel
|
||||
was added by Bryce Denney.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-new-pit</entry>
|
||||
<entry>yes</entry>
|
||||
<entry>
|
||||
Enables Greg Alexander's PIT model, written during Summer 2001. This
|
||||
model was written from scratch to be much more complete than the old
|
||||
Bochs PIT model, which was missing many registers and features.
|
||||
If you disable this option, the old PIT model will be used instead.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-slowdown</entry>
|
||||
<entry>no</entry>
|
||||
<entry>
|
||||
Enables Greg Alexander's experimental "slowdown timer" which tries to
|
||||
keep the Bochs simulation time in sync with real time. When Bochs
|
||||
is executing many instructions, the slowdown timer will have no effect.
|
||||
When Bochs is idle, or just waiting around for an interrupt, the
|
||||
slowdown timer kicks in to prevent Bochs time from speeding ahead.
|
||||
This should solve problems like, "Why does my screen saver turn on
|
||||
after 30 seconds?"
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-idle-hack</entry>
|
||||
<entry>no</entry>
|
||||
<entry>
|
||||
Enables Roland Mainz's experimental idle code, which is intended to
|
||||
keep Bochs from always using 100% of CPU time. When Bochs is waiting
|
||||
around for an interrupt, the idle code uses a select() loop and some
|
||||
X11 tricks to wait until user input arrives. This is designed to
|
||||
keep Bochs responsive while still yielding to other processes when
|
||||
Bochs is idle.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-ne2000</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Enable NE2000 network card support. This requires a
|
||||
low-level component to be written for each OS. The NE2000
|
||||
option is only supported on FreeBSD, OpenBSD, Linux, and Windows
|
||||
NT/2K<footnote> <para>Windows support was very recently added by
|
||||
Don Becker, and will not work on Windows 95/98.</para> </footnote>. When
|
||||
enabled and configured, the NE2000 device model can talk to any computer
|
||||
on the network EXCEPT FOR the local host.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-vga</entry>
|
||||
<entry>yes</entry>
|
||||
<entry>Use VGA emulation. VGA is the only supported option and
|
||||
since it's the default, you don't need to include this option.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-fpu</entry>
|
||||
<entry>yes</entry>
|
||||
<entry>If you want to compile bochs to make use of the FPU emulator
|
||||
written by Bill Metzenthen (the one used by the Linux kernel),
|
||||
use this option.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-split-hd</entry>
|
||||
<entry>yes</entry>
|
||||
<entry>
|
||||
When enabled, this allows a series of partial hard disk image files to be
|
||||
treated as if it was one large file. The .bochsrc specifies the first
|
||||
partial HD image (example win95-1) and then bochs searches for the other
|
||||
partial images in as a sequence (win95-2, win95-3, etc.) and opens them
|
||||
all. Then, it treats the series as if there was a single large file
|
||||
created by "cat win95-1 win95-2 win95-3". This trick works for both
|
||||
diskc and diskd. All files must be a multiple of 512 bytes.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-debugger</entry>
|
||||
<entry>no</entry>
|
||||
@ -1353,28 +1460,12 @@ windows.
|
||||
panic in bochs. You don't need this option.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-vga</entry>
|
||||
<entry>yes</entry>
|
||||
<entry>Use VGA emulation. VGA is the only supported option and
|
||||
since it's the default, you don't need to include this option.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-fpu</entry>
|
||||
<entry>yes</entry>
|
||||
<entry>If you want to compile bochs to make use of the FPU emulator
|
||||
written by Bill Metzenthen (the one used by the Linux kernel),
|
||||
use this option.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-ne2000</entry>
|
||||
<entry>--enable-cpp</entry>
|
||||
<entry>no</entry>
|
||||
<entry>Enable NE2000 network card support. This requires a
|
||||
low-level component to be written for each OS. The NE2000
|
||||
option is only supported on FreeBSD, OpenBSD, and Linux<footnote>
|
||||
<para> Windows network support coming soon! </para>
|
||||
</footnote>. When enabled and configured, the NE2000 device model
|
||||
can talk to any computer on the network EXCEPT FOR the local host.
|
||||
<entry>
|
||||
Use .cpp as C++ suffix. Renames all the .cc files to .cpp for use with
|
||||
compilers which want that, like MS C++ compilers. Don't use this option
|
||||
unless you know you need it.
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
@ -1393,12 +1484,15 @@ windows.
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>--enable-cpp</entry>
|
||||
<entry>--enable-iodebug</entry>
|
||||
<entry>no</entry>
|
||||
<entry>
|
||||
Use .cpp as C++ suffix. Moves all the .cc files to .cpp for use with
|
||||
compilers which want that, like MS C++ compilers. Don't use this option
|
||||
unless you know you need it.
|
||||
Dave Poirier has written an experimental interface to the debugger
|
||||
using I/O ports, so that software running in the guest OS can access
|
||||
features of the debugger. You only want this option if you are
|
||||
developing guest OS code for use in Bochs. In other words, most people
|
||||
don't. Also, it should only be used with --enable-debugger. See section
|
||||
&FIXME; in the Developer's Guide for details.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
@ -1422,6 +1516,32 @@ windows.
|
||||
<entry>Writes to port e9 go to console. Unless you know you want
|
||||
this option, you don't.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-processors={<option>1,2,3,...,15</option>}</entry>
|
||||
<entry>1</entry>
|
||||
<entry>
|
||||
By changing to more than 1 processor, you enable SMP simulation. This
|
||||
allows you to boot Linux and maybe other OSes in SMP mode, and bochs will
|
||||
simulate all the different CPUs and communication between them. Do not
|
||||
expect this option to speed up your simulation! On the contrary, it has
|
||||
to spend extra time simulating the different CPUs (even if they're mostly
|
||||
idle) and the communication between them. Use it to try out an SMP OS if
|
||||
you don't have an SMP machine, or to debug SMP OS drivers. Click
|
||||
here &FIXME; for more details on SMP in Bochs.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-apic</entry>
|
||||
<entry>no</entry>
|
||||
<entry>
|
||||
In an SMP machine, there is an APIC (Advanced Programmable Interrupt
|
||||
Controller) built into each processor and a separate I/O APIC. The
|
||||
APICs are used for inter-processor communication, so they must be
|
||||
enabled for SMP to work. The default is "no" when there is one
|
||||
processor and "yes" when there is more than one processor. Normally,
|
||||
the default is correct and you would never need to type this option.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-loader</entry>
|
||||
<entry>no</entry>
|
||||
@ -1433,33 +1553,33 @@ windows.
|
||||
<entry>no</entry>
|
||||
<entry>
|
||||
Compile in support for instrumentation. This allows you to collect
|
||||
instrumentation data from bochs as it executes code. You have to create your
|
||||
own instrumentation library and define the instrumentation macros (hooks in
|
||||
bochs) to either call your library functions or not, depending upon whether
|
||||
you want to collect each piece of data. [Kevin wrote: I broke some of the
|
||||
hooks when I recoded the fetch/decode loop.]
|
||||
instrumentation data from bochs as it executes code. You have to create
|
||||
your own instrumentation library and define the instrumentation macros
|
||||
(hooks in bochs) to either call your library functions or not, depending
|
||||
upon whether you want to collect each piece of data. [Kevin wrote: I
|
||||
broke some of the hooks when I recoded the fetch/decode loop.]
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-simid={0, 1}</entry>
|
||||
<entry>0
|
||||
<entry>
|
||||
CPU simulator ID. You likely don't need this option. If you are using bochs
|
||||
to cosimulate, that is to run multiple simulators in parallel so that you can
|
||||
compare results and check for divergence, each simulator needs an ID. When
|
||||
you only have one CPU simulator (as usual) the default of 0 is fine. [Kevin
|
||||
wrote: I use this option occasionally to run 2 versions of bochs against each
|
||||
other and check for divergence, to find bugs etc. This option gets broken
|
||||
more than not due to architectural changes, and I usually end of fixing it
|
||||
each time I use it.]
|
||||
CPU simulator ID. You likely don't need this option. If you are using
|
||||
bochs to cosimulate, that is to run multiple simulators in parallel so
|
||||
that you can compare results and check for divergence, each simulator
|
||||
needs an ID. When you only have one CPU simulator (as usual) the default
|
||||
of 0 is fine. [Kevin wrote: I use this option occasionally to run 2
|
||||
versions of bochs against each other and check for divergence, to find
|
||||
bugs etc. This option gets broken more than not due to architectural
|
||||
changes, and I usually end of fixing it each time I use it.]
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>--enable-num-sim={1, 2}</entry>
|
||||
<entry>1</entry>
|
||||
<entry>
|
||||
Number of CPU simulators. The default of 1 is likely what you want, so don't
|
||||
use this option. It is for assigning an ID to the simulator, for
|
||||
Number of CPU simulators. The default of 1 is likely what you want, so
|
||||
don't use this option. It is for assigning an ID to the simulator, for
|
||||
cosimulation described above.
|
||||
</entry>
|
||||
</row>
|
||||
@ -1467,15 +1587,16 @@ windows.
|
||||
<entry>--enable-time0=n</entry>
|
||||
<entry>no</entry>
|
||||
<entry>
|
||||
Start CMOS clock at at time0 of n instead of using time(). You likely don't
|
||||
want this option. When debugging, it is very helpful to have deterministic
|
||||
execution, and the clock is something that can skew determinism. If you
|
||||
supply this option, pass it a value returned by the time(NULL) call, relating
|
||||
to the time you want bochs to start the CMOS clock from. For instance,
|
||||
'--enable-time0=917385580'. If you use this option but don't provide a
|
||||
value, configure uses a default value. Note that the time0 option in
|
||||
.bochsrc will override this value. Without this option, the CMOS clock uses
|
||||
a time0 based on the value of time(NULL), which is probably what you want.
|
||||
Start CMOS clock at at time0 of n instead of using time(). You likely
|
||||
don't want this option. When debugging, it is very helpful to have
|
||||
deterministic execution, and the clock is something that can skew
|
||||
determinism. If you supply this option, pass it a value returned by the
|
||||
time(NULL) call, relating to the time you want bochs to start the CMOS
|
||||
clock from. For instance, '--enable-time0=917385580'. If you use this
|
||||
option but don't provide a value, configure uses a default value. Note
|
||||
that the time0 option in .bochsrc will override this value. Without this
|
||||
option, the CMOS clock uses a time0 based on the value of time(NULL),
|
||||
which is probably what you want.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
@ -1488,7 +1609,6 @@ windows.
|
||||
</tgroup>
|
||||
</table>
|
||||
|
||||
</para>
|
||||
</section> <!-- end of Configure Options -->
|
||||
|
||||
<section><title>Transcript of Successful Compilation</title>
|
||||
|
Loading…
Reference in New Issue
Block a user