1f3478392SPeter Maydell.. _Supported-build-platforms: 2f3478392SPeter Maydell 3f3478392SPeter MaydellSupported build platforms 4f3478392SPeter Maydell========================= 5f3478392SPeter Maydell 6f3478392SPeter MaydellQEMU aims to support building and executing on multiple host OS 7f3478392SPeter Maydellplatforms. This appendix outlines which platforms are the major build 8f3478392SPeter Maydelltargets. These platforms are used as the basis for deciding upon the 9f3478392SPeter Maydellminimum required versions of 3rd party software QEMU depends on. The 10f3478392SPeter Maydellsupported platforms are the targets for automated testing performed by 11f3478392SPeter Maydellthe project when patches are submitted for review, and tested before and 12f3478392SPeter Maydellafter merge. 13f3478392SPeter Maydell 14f3478392SPeter MaydellIf a platform is not listed here, it does not imply that QEMU won't 15f3478392SPeter Maydellwork. If an unlisted platform has comparable software versions to a 16f3478392SPeter Maydelllisted platform, there is every expectation that it will work. Bug 17f3478392SPeter Maydellreports are welcome for problems encountered on unlisted platforms 18f3478392SPeter Maydellunless they are clearly older vintage than what is described here. 19f3478392SPeter Maydell 20f3478392SPeter MaydellNote that when considering software versions shipped in distros as 21f3478392SPeter Maydellsupport targets, QEMU considers only the version number, and assumes the 22f3478392SPeter Maydellfeatures in that distro match the upstream release with the same 23f3478392SPeter Maydellversion. In other words, if a distro backports extra features to the 24f3478392SPeter Maydellsoftware in their distro, QEMU upstream code will not add explicit 25f3478392SPeter Maydellsupport for those backports, unless the feature is auto-detectable in a 26f3478392SPeter Maydellmanner that works for the upstream releases too. 27f3478392SPeter Maydell 28f3478392SPeter MaydellThe `Repology`_ site is a useful resource to identify 29f3478392SPeter Maydellcurrently shipped versions of software in various operating systems, 30f3478392SPeter Maydellthough it does not cover all distros listed below. 31f3478392SPeter Maydell 32*7f800d34SMarc-André LureauSupported host architectures 33*7f800d34SMarc-André Lureau---------------------------- 34*7f800d34SMarc-André Lureau 35*7f800d34SMarc-André LureauThose hosts are officially supported, with various accelerators: 36*7f800d34SMarc-André Lureau 37*7f800d34SMarc-André Lureau .. list-table:: 38*7f800d34SMarc-André Lureau :header-rows: 1 39*7f800d34SMarc-André Lureau 40*7f800d34SMarc-André Lureau * - CPU Architecture 41*7f800d34SMarc-André Lureau - Accelerators 42*7f800d34SMarc-André Lureau * - Arm 43*7f800d34SMarc-André Lureau - kvm (64 bit only), tcg, xen 44*7f800d34SMarc-André Lureau * - MIPS 45*7f800d34SMarc-André Lureau - kvm, tcg 46*7f800d34SMarc-André Lureau * - PPC 47*7f800d34SMarc-André Lureau - kvm, tcg 48*7f800d34SMarc-André Lureau * - RISC-V 49*7f800d34SMarc-André Lureau - tcg 50*7f800d34SMarc-André Lureau * - s390x 51*7f800d34SMarc-André Lureau - kvm, tcg 52*7f800d34SMarc-André Lureau * - SPARC 53*7f800d34SMarc-André Lureau - tcg 54*7f800d34SMarc-André Lureau * - x86 55*7f800d34SMarc-André Lureau - hax, hvf (64 bit only), kvm, nvmm, tcg, whpx (64 bit only), xen 56*7f800d34SMarc-André Lureau 57*7f800d34SMarc-André LureauOther host architectures are not supported. It is possible to build QEMU on an 58*7f800d34SMarc-André Lureauunsupported host architecture using the configure ``--enable-tcg-interpreter`` 59*7f800d34SMarc-André Lureauoption to enable the experimental TCI support, but note that this is very slow 60*7f800d34SMarc-André Lureauand is not recommended. 61*7f800d34SMarc-André Lureau 62*7f800d34SMarc-André LureauNon-supported architectures may be removed in the future following the 63*7f800d34SMarc-André Lureau:ref:`deprecation process<Deprecated features>`. 64*7f800d34SMarc-André Lureau 65f3478392SPeter MaydellLinux OS, macOS, FreeBSD, NetBSD, OpenBSD 66f3478392SPeter Maydell----------------------------------------- 67f3478392SPeter Maydell 68f3478392SPeter MaydellThe project aims to support the most recent major version at all times. Support 69f3478392SPeter Maydellfor the previous major version will be dropped 2 years after the new major 70f3478392SPeter Maydellversion is released or when the vendor itself drops support, whichever comes 71f3478392SPeter Maydellfirst. In this context, third-party efforts to extend the lifetime of a distro 72f3478392SPeter Maydellare not considered, even when they are endorsed by the vendor (eg. Debian LTS). 73f3478392SPeter Maydell 74f3478392SPeter MaydellFor the purposes of identifying supported software versions available on Linux, 75f3478392SPeter Maydellthe project will look at CentOS, Debian, Fedora, openSUSE, RHEL, SLES and 76f3478392SPeter MaydellUbuntu LTS. Other distros will be assumed to ship similar software versions. 77f3478392SPeter Maydell 78f3478392SPeter MaydellFor FreeBSD and OpenBSD, decisions will be made based on the contents of the 79f3478392SPeter Maydellrespective ports repository, while NetBSD will use the pkgsrc repository. 80f3478392SPeter Maydell 81f3478392SPeter MaydellFor macOS, `HomeBrew`_ will be used, although `MacPorts`_ is expected to carry 82f3478392SPeter Maydellsimilar versions. 83f3478392SPeter Maydell 84f3478392SPeter MaydellWindows 85f3478392SPeter Maydell------- 86f3478392SPeter Maydell 87f3478392SPeter MaydellThe project supports building with current versions of the MinGW toolchain, 88f3478392SPeter Maydellhosted on Linux (Debian/Fedora). 89f3478392SPeter Maydell 90f3478392SPeter MaydellThe version of the Windows API that's currently targeted is Vista / Server 91f3478392SPeter Maydell2008. 92f3478392SPeter Maydell 93f3478392SPeter Maydell.. _HomeBrew: https://brew.sh/ 94f3478392SPeter Maydell.. _MacPorts: https://www.macports.org/ 95f3478392SPeter Maydell.. _Repology: https://repology.org/ 96