Bochs: Difference between revisions

1,938 bytes added ,  14 years ago
talk about compiling bochs from source
[unchecked revision][unchecked revision]
No edit summary
(talk about compiling bochs from source)
Line 90:
 
On older versions enabling the debugger alone doesn't compile magic breakpoint support, you will need to pass <tt>--enable-magic-breakpoint</tt> to configure for those versions.
 
==Compiling Bochs from Source==
Bochs has many compile-time configuration options, some of which conflict, and therefore a binary distribution of Bochs may not be suitable for your purposes. I found it was best to compile my own copy of Bochs to be sure I had the features that I needed. Also, you should consider using the CVS snapshot version of Bochs if the released version is old and not working for you. I found this was necessary up until version 2.4 was released, for example.
 
The array of Bochs configuration options can be confusing, and you cannot assume the defaults are going to be sensible. These are the options I use, this can get you started:
 
./configure --enable-smp \
--enable-cpu-level=6 \
--enable-acpi \
--enable-all-optimizations \
--enable-x86-64 \
--enable-pci \
--enable-apic \
--enable-vmx \
--enable-pae \
--enable-large-pages \
--enable-debugger \
--enable-disasm \
--enable-debugger-gui \
--enable-logging \
--enable-vbe \
--enable-fpu \
--enable-mmx \
--enable-3dnow \
--enable-sb16=dummy \
--enable-sep \
--enable-x86-debugger \
--enable-iodebug \
--disable-plugins \
--disable-docbook \
--with-x --with-x11 --with-term
 
A few notes:
* Bochs has GDB-stub support, and its own internal debugger. These cannot be compiled into the same Bochs binary.
* The GDB-stub in Bochs does not support SMP, last time I checked.
* If you do not enable PCI, then the Intel Multiprocessing tables will not appear in memory.
* I was unable to successfully load the GUI debugger without specifying <tt>--disable-plugins</tt>. Otherwise, I get dynamic loading symbol errors.
 
 
==See Also==
20

edits