X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=README;h=cb60d05bee2f208a133e597c3127e71c09cd5852;hb=72c1701f62e8d44eb24a0583a958edc280105455;hp=76c4df0326eaf8e87a416067018e13026f1abb15;hpb=411bffc41cad1298637b67eaa532b22a7b0099cf;p=mirror_qemu.git diff --git a/README b/README index 76c4df0326..cb60d05bee 100644 --- a/README +++ b/README @@ -1,71 +1,106 @@ -The QEMU x86 emulator ---------------------- + QEMU README + =========== -INSTALLATION ------------- +QEMU is a generic and open source machine & userspace emulator and +virtualizer. -Type +QEMU is capable of emulating a complete machine in software without any +need for hardware virtualization support. By using dynamic translation, +it achieves very good performance. QEMU can also integrate with the Xen +and KVM hypervisors to provide emulated hardware while allowing the +hypervisor to manage the CPU. With hypervisor support, QEMU can achieve +near native performance for CPUs. When QEMU emulates CPUs directly it is +capable of running operating systems made for one machine (e.g. an ARMv7 +board) on a different machine (e.g. an x86_64 PC board). - ./configure --interp-prefix=/usr/local/qemu-i386 - make +QEMU is also capable of providing userspace API virtualization for Linux +and BSD kernel interfaces. This allows binaries compiled against one +architecture ABI (e.g. the Linux PPC64 ABI) to be run on a host using a +different architecture ABI (e.g. the Linux x86_64 ABI). This does not +involve any hardware emulation, simply CPU and syscall emulation. -to build qemu and libqemu.a. +QEMU aims to fit into a variety of use cases. It can be invoked directly +by users wishing to have full control over its behaviour and settings. +It also aims to facilitate integration into higher level management +layers, by providing a stable command line interface and monitor API. +It is commonly invoked indirectly via the libvirt library when using +open source applications such as oVirt, OpenStack and virt-manager. -Type +QEMU as a whole is released under the GNU General Public License, +version 2. For full licensing details, consult the LICENSE file. - make install -to install QEMU in /usr/local/bin +Building +======== -* On x86 you should be able to launch any program by using the -libraries installed on your PC. For example: +QEMU is multi-platform software intended to be buildable on all modern +Linux platforms, OS-X, Win32 (via the Mingw64 toolchain) and a variety +of other UNIX targets. The simple steps to build QEMU are: - ./qemu -L / /bin/ls + mkdir build + cd build + ../configure + make -* On non x86 CPUs, you need first to download at least an x86 glibc -(qemu-XXX-i386-glibc21.tar.gz on the qemu web page). Ensure that -LD_LIBRARY_PATH is not set: +Additional information can also be found online via the QEMU website: - unset LD_LIBRARY_PATH + http://qemu-project.org/Hosts/Linux + http://qemu-project.org/Hosts/Mac + http://qemu-project.org/Hosts/W32 -Then you can launch the precompiled 'ls' x86 executable: - ./qemu /usr/local/qemu-i386/bin/ls-i386 +Submitting patches +================== -You can look at /usr/local/qemu-i386/bin/qemu-conf.sh so that QEMU is -automatically launched by the Linux kernel when you try to launch x86 -executables. +The QEMU source code is maintained under the GIT version control system. -Tested tool versions --------------------- + git clone git://git.qemu-project.org/qemu.git -In order to compile QEMU succesfully, it is very important that you -have the right tools. The most important one is gcc. I cannot guaranty -that QEMU works if you do not use a tested gcc version. Look at -'configure' and 'Makefile' if you want to make a different gcc -version work. +When submitting patches, the preferred approach is to use 'git +format-patch' and/or 'git send-email' to format & send the mail to the +qemu-devel@nongnu.org mailing list. All patches submitted must contain +a 'Signed-off-by' line from the author. Patches should follow the +guidelines set out in the HACKING and CODING_STYLE files. -host gcc binutils glibc linux -------------------------------------------------------- -x86 2.95.2 2.13.2 2.1.3 2.4.18 +Additional information on submitting patches can be found online via +the QEMU website -PowerPC 2.95.4 2.12.90.0.1 2.2.5 2.4.20-pre2 + http://qemu-project.org/Contribute/SubmitAPatch + http://qemu-project.org/Contribute/TrivialPatches -Alpha 3.3 [1] 2.14.90.0.4 2.2.5 2.2.20 [2] -Sparc32 2.95.4 2.12.90.0.1 2.2.5 2.4.18 +Bug reporting +============= -ARM 2.95.4 2.12.90.0.1 2.2.5 2.4.9-ac10-rmk2-np1-cerf2 +The QEMU project uses Launchpad as its primary upstream bug tracker. Bugs +found when running code built from QEMU git or upstream released sources +should be reported via: -[1] On Alpha, QEMU needs the gcc 'visibility' attribute only available - for gcc version >= 3.3. -[2] Linux >= 2.4.20 is necessary for precise exception support - (untested). + https://bugs.launchpad.net/qemu/ -Documentation -------------- +If using QEMU via an operating system vendor pre-built binary package, it +is preferable to report bugs to the vendor's own bug tracker first. If +the bug is also known to affect latest upstream code, it can also be +reported via launchpad. -Read the documentation in qemu-doc.html. +For additional information on bug reporting consult: + http://qemu-project.org/Contribute/ReportABug -Fabrice Bellard. \ No newline at end of file + +Contact +======= + +The QEMU community can be contacted in a number of ways, with the two +main methods being email and IRC + + - qemu-devel@nongnu.org + http://lists.nongnu.org/mailman/listinfo/qemu-devel + - #qemu on irc.oftc.net + +Information on additional methods of contacting the community can be +found online via the QEMU website: + + http://qemu-project.org/Contribute/StartHere + +-- End