From 831952376ebb4b18370048172c61159580f4b8dc Mon Sep 17 00:00:00 2001 From: bellard Date: Mon, 5 Feb 2007 19:42:07 +0000 Subject: Darwin user help (Pierre d'Herbemont) git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2386 c046a42c-6fe2-441c-8c8c-71466251a162 --- qemu-doc.texi | 124 +++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 115 insertions(+), 9 deletions(-) diff --git a/qemu-doc.texi b/qemu-doc.texi index 17b03cefd2..834c778552 100644 --- a/qemu-doc.texi +++ b/qemu-doc.texi @@ -25,7 +25,7 @@ * Installation:: * QEMU PC System emulator:: * QEMU System emulator for non PC targets:: -* QEMU Linux User space emulator:: +* QEMU User space emulator:: * compilation:: Compilation from the sources * Index:: @end menu @@ -57,8 +57,8 @@ peripherals. It can be used to launch different Operating Systems without rebooting the PC or to debug system code. @item -User mode emulation (Linux host only). In this mode, QEMU can launch -Linux processes compiled for one CPU on another CPU. It can be used to +User mode emulation. In this mode, QEMU can launch +processes compiled for one CPU on another CPU. It can be used to launch the Wine Windows API emulator (@url{http://www.winehq.org}) or to ease cross-compilation and cross-debugging. @@ -1704,8 +1704,29 @@ LSI53C895A PCI SCSI Host Bus Adapter with hard disk and CD-ROM devices. A Linux 2.6 test image is available on the QEMU web site. More information is available in the QEMU mailing-list archive. -@node QEMU Linux User space emulator -@chapter QEMU Linux User space emulator +@node QEMU User space emulator +@chapter QEMU User space emulator + +@menu +* Supported Operating Systems :: +* Linux User space emulator:: +* Mac OS X/Darwin User space emulator :: +@end menu + +@node Supported Operating Systems +@section Supported Operating Systems + +The following OS are supported in user space emulation: + +@itemize @minus +@item +Linux (refered as qemu-linux-user) +@item +Mac OS X/Darwin (refered as qemu-darwin-user) +@end itemize + +@node Linux User space emulator +@section Linux User space emulator @menu * Quick Start:: @@ -1715,7 +1736,7 @@ information is available in the QEMU mailing-list archive. @end menu @node Quick Start -@section Quick Start +@subsection Quick Start In order to launch a Linux process, QEMU needs the process executable itself and all the target (x86) dynamic libraries used by it. @@ -1765,7 +1786,7 @@ qemu-i386 /usr/local/qemu-i386/bin/qemu-i386 \ @end itemize @node Wine launch -@section Wine launch +@subsection Wine launch @itemize @@ -1794,7 +1815,7 @@ qemu-i386 /usr/local/qemu-i386/wine/bin/wine \ @end itemize @node Command line options -@section Command line options +@subsection Command line options @example usage: qemu-i386 [-h] [-d] [-L path] [-s size] program [arguments...] @@ -1819,7 +1840,7 @@ Act as if the host page size was 'pagesize' bytes @end table @node Other binaries -@section Other binaries +@subsection Other binaries @command{qemu-arm} is also capable of running ARM "Angel" semihosted ELF binaries (as implemented by the arm-elf and arm-eabi Newlib/GDB @@ -1831,6 +1852,91 @@ coldfire uClinux bFLT format binaries. The binary format is detected automatically. +@node Mac OS X/Darwin User space emulator +@section Mac OS X/Darwin User space emulator + +@menu +* Mac OS X/Darwin Status:: +* Mac OS X/Darwin Quick Start:: +* Mac OS X/Darwin Command line options:: +@end menu + +@node Mac OS X/Darwin Status +@subsection Mac OS X/Darwin Status + +@itemize @minus +@item +target x86 on x86: Most apps (Cocoa and Carbon too) works. [1] +@item +target PowerPC on x86: Not working as the ppc commpage can't be mapped (yet!) +@item +target x86 on x86: Most apps (Cocoa and Carbon too) works. [1] +@item +target x86 on PowerPC: most utilities work. Cocoa and Carbon apps are not yet supported. +@end itemize + +[1] If you're host commpage can be executed by qemu. + +@node Mac OS X/Darwin Quick Start +@subsection Quick Start + +In order to launch a Mac OS X/Darwin process, QEMU needs the process executable +itself and all the target dynamic libraries used by it. If you don't have the FAT +libraries (you're running Mac OS X/ppc) you'll need to obtain it from a Mac OS X +CD or compile them by hand. + +@itemize + +@item On x86, you can just try to launch any process by using the native +libraries: + +@example +qemu-darwin-i386 /bin/ls +@end example + +or to run the ppc version of the executable: + +@example +qemu-darwin-ppc /bin/ls +@end example + +@item On ppc, you'll have to tell qemu where your x86 libraries (and dynamic linker) +are installed: + +@example +qemu-darwin-i386 -L /opt/x86_root/ /bin/ls +@end example + +@code{-L /opt/x86_root/} tells that the dynamic linker (dyld) path is in +@file{/opt/x86_root/usr/bin/dyld}. + +@end itemize + +@node Mac OS X/Darwin Command line options +@subsection Command line options + +@example +usage: qemu-darwin-i386 [-h] [-d] [-L path] [-s size] program [arguments...] +@end example + +@table @option +@item -h +Print the help +@item -L path +Set the library root path (default=/) +@item -s size +Set the stack size in bytes (default=524288) +@end table + +Debug options: + +@table @option +@item -d +Activate log (logfile=/tmp/qemu.log) +@item -p pagesize +Act as if the host page size was 'pagesize' bytes +@end table + @node compilation @chapter Compilation from the sources -- cgit v1.2.1