支持的構建平臺
不是原創(chuàng)只提供翻譯!機器翻譯可能不正常!
QEMU 旨在支持在多個主機操作系統(tǒng)上構建和執(zhí)行 平臺。本附錄概述了哪些平臺是主要構建 目標。這些平臺被用作決定 QEMU 所依賴的第三方軟件的最低要求版本。這 支持的平臺是 提交補丁以供審核并在之前進行測試的項目 合并后。
如果此處未列出平臺,并不意味著QEMU不會 工作。如果未列出的平臺具有與 上市平臺,人們都期望它會起作用。錯誤 歡迎舉報在未上市平臺上遇到的問題 除非它們明顯比這里描述的年份更古老。
請注意,當將發(fā)行版中附帶的軟件版本視為 支持目標,QEMU 僅考慮版本號,并假設 該發(fā)行版中的功能與上游版本匹配 版本。換句話說,如果發(fā)行版將額外的功能向后移植到 軟件在他們的發(fā)行版中,QEMU上游代碼不會添加顯式 支持這些向后移植,除非該功能可在 也適用于上游版本的方式。
Repology?站點是用于識別的有用資源 當前在各種操作系統(tǒng)中交付的軟件版本, 盡管它不涵蓋下面列出的所有發(fā)行版。
支持的主機體系結構
這些主機是官方支持的,具有各種加速器:
中央處理器架構
加速器
手臂
KVM(僅限 64 位)、TCG、XEN
MIPS(僅限小端序)
KVM, TCG
PPC
KVM, TCG
RISC-V
KVM, TCG
S390X
KVM, TCG
斯帕克
TCG
x86
HAX, HVF (僅限 64 位), KVM, NVMM, TCG, WHPX (僅限 64 位), Xen
不支持其他主機體系結構??梢詷嫿≦EMU系統(tǒng) 使用配置選項在不受支持的主機體系結構上進行仿真以啟用 TCI 支持,但請注意 這非常慢,不建議正常使用。QEMU 用戶仿真 需要特定于主機的信號處理支持,因此TCI將無濟于事 在不受支持的主機體系結構上。--enable-tcg-interpreter
在棄用過程之后,將來可能會刪除不受支持的體系結構。
Linux OS, macOS, FreeBSD, NetBSD, OpenBSD
該項目旨在始終支持最新的主要版本 首次發(fā)布后長達五年。支持 對于以前的主要版本將在新專業(yè)版本后 2 年刪除 版本發(fā)布或供應商本身放棄支持時,以出現(xiàn)者為準 第一。在這種情況下,第三方努力延長發(fā)行版的生命周期 不被考慮,即使它們得到供應商的認可(例如。Debian LTS); 對于包含從更高版本向后移植的包的存儲庫也是如此 發(fā)行版(例如 Debian 向后移植)。在每個主要版本中,只有最 考慮最近的次要版本。
為了確定 Linux 上可用的受支持軟件版本, 該項目將著眼于CentOS,Debian,F(xiàn)edora,openSUSE,RHEL,SLES和 Ubuntu LTS.將假定其他發(fā)行版提供類似的軟件版本。
對于 FreeBSD 和 OpenBSD, 將根據 各自的端口存儲庫,而 NetBSD 將使用 pkgsrc 存儲庫。
對于macOS,將使用Homebrew,盡管MacPorts預計將攜帶。 類似的版本。
某些生成依賴項可能遵循不太保守的規(guī)則:
蟒蛇運行時
具有長期支持的發(fā)行版通常提供多個版本 的 Python 運行時。雖然QEMU最初的目標是支持: 發(fā)行版的默認運行時,以后可能會增加其最低版本 到供應商提供的任何較新的 Python,作為選項提供。 在這種情況下,有必要使用命令行 腳本選項,將 QEMU 指向受支持的 Python 運行時的版本。
--python
configure
從 QEMU 8.1.50 開始,Python 的最低支持版本是 3.7。
Python 構建依賴項
QEMU的一些構建依賴項是用Python編寫的。通常這些 僅由默認 Python 運行時的發(fā)行版打包。 如果 QEMU 提高其最低 Python 版本,并且非默認運行時為 必需的,可能需要從 Python 中獲取 Python 模塊 包索引 (PyPI) 通過 ,以便構建 QEMU。
pip
可選的生成依賴項
構建缺少組件不會影響構建能力的組件 QEMU 可能在發(fā)行版中不可用,或者對于 QEMU 來說可能太舊了 要求。其中許多,例如鱷梨測試框架 或各種 linter,都是用 Python 編寫的,因此也可以 使用 進行安裝。交叉編譯器是另一個例子 可選的構建時依賴關系;在這種情況下,可以 從 EPEL 等存儲庫下載它們,以使用基于容器的 使用 OR 進行交叉編譯,或使用預構建 與 QEMU 一起分發(fā)的二進制文件。
pip
docker
podman
窗戶
該項目旨在支持兩個最新版本的Windows,即 仍受供應商支持。當前的最低 Windows API 目標是“Windows 8”,所以理論上QEMU二進制文件仍然可以運行 在舊版本的Windows上也是如此。但是,這種舊版本的Windows是 不再測試,因此建議使用最新版本之一 取而代之的是窗口。
該項目支持使用當前版本的MinGW構建QEMU。 工具鏈,托管在Linux(Debian / Fedora)上或通過Windows上的MSYS2。 始終首選較新的Windows版本,因為它不太可能具有 通過 MSYS2 構建的問題。QEMU的建設過程涉及一些 調用 os.symlink() 的 Python 腳本需要特別注意 要成功完成的生成過程。在較新版本的 Windows 10 上, 如果啟用了開發(fā)人員模式,則非特權帳戶可以創(chuàng)建符號鏈接。 當開發(fā)人員模式不可用/未啟用時,SeCreateSymbolicLinkPrivilege 權限是必需的,或者進程必須以管理員身份運行。