当前位置: 首页 > news >正文

【QEMU中文文档】1.1 支持的构建平台

本文由 AI 翻译(ChatGPT-4)完成,并由作者进行人工校对。如有任何问题或建议,欢迎联系我。联系方式:jelin-sh@outlook.com。

原文:Supported build platforms — QEMU documentation

QEMU 旨在支持在多个主机操作系统平台上构建和运行。本附录概述了主要的构建目标平台。这些平台决定了 QEMU 所依赖的第三方软件的最低要求版本。支持的平台是 QEMU 项目在提交补丁进行审查时执行自动化测试的目标,并在合并前后进行测试。

如果某个平台没有在这里列出,这并不意味着 QEMU 无法在该平台上运行。如果未列出的平台的软件版本与列出平台的相当,那么预期它是可以运行的。欢迎报告在未列出平台上遇到的问题,除非它们的软件版本明显比这里描述的更旧。

请注意,在考虑支持的发行版提供的软件版本时,QEMU 只考虑版本号,并假定该发行版中的功能与具有相同版本的上游发布相匹配。换句话说,如果发行版将额外功能移植到其软件中,QEMU 上游代码不会为这些移植添加显式支持,除非这些功能以一种对上游发布也适用的方式进行自动检测。

Repology 网站是一个有用的资源,可以识别各种操作系统中当前已发布的软件版本,尽管它并未涵盖下面列出的所有发行版。

支持的主机架构

这些主机架构得到官方支持,并配备了各种加速器:

CPU 架构加速器
ArmKVM(仅限 64 位),TCG,Xen
MIPS(仅支持小端)KVM,TCG
PPCKVM,TCG
RISC-VKVM,TCG
s390xKVM,TCG
SPARCTCG
x86HVF(仅限 64 位),KVM,NVMM,TCG,WHPX(仅限 64 位),Xen

其他主机架构不受支持。可以使用 --enable-tcg-interpreter 选项在不受支持的主机架构上构建 QEMU 系统仿真,以启用 TCI 支持,但请注意这会非常慢,不建议正常使用。QEMU 用户模式仿真需要主机特定的信号处理支持,因此在不受支持的主机架构上不会有 TCI 的帮助。

不支持的架构可能会在弃用过程后被移除。

Linux 操作系统,macOS,FreeBSD,NetBSD,OpenBSD

该项目旨在在初始发布后的五年内始终支持最新的主要版本。在发布新的主要版本后的两年内,将停止支持先前的主要版本,或者在供应商自身停止支持时停止支持,以先到者为准。在这种情况下,不考虑第三方努力延长发行版寿命,即使它们得到供应商的认可(例如 Debian LTS);包含从后续版本中回溯的软件包的存储库也是如此(例如 Debian backports)。在每个主要版本中,只考虑最新的次要版本。

为了确定在 Linux 上可用的支持软件版本,该项目将查看 CentOS、Debian、Fedora、openSUSE、RHEL、SLES 和 Ubuntu LTS。其他发行版将被假定为提供类似的软件版本。

对于 FreeBSD 和 OpenBSD,决策将基于各自端口存储库的内容,而 NetBSD 将使用 pkgsrc 存储库。

对于 macOS,将使用 Homebrew,尽管预计 MacPorts 将携带类似版本。

一些构建依赖可能遵循较不保守的规则:

  • Python 运行时:长期支持的发行版通常提供多个版本的 Python 运行时。QEMU 最初将支持发行版的默认运行时,但随后可能将最低版本提高到供应商提供的更新的 Python 版本。在这种情况下,将需要使用 configure 脚本的 --python 命令行选项将 QEMU 指向支持的 Python 运行时版本。截至 QEMU 9.0.50 版本,支持的最低 Python 版本为 3.7。
  • Python 构建依赖:QEMU 的一些构建依赖项是用 Python 编写的。通常,这些依赖项只有默认 Python 运行时的发行版才会打包。如果 QEMU 提高了其最低 Python 版本,并且需要非默认运行时,则可能需要通过 pip 从 Python 软件包索引(PyPI)获取这些 Python 模块,以构建 QEMU。
  • 可选构建依赖:一些构建组件的缺失不会影响 QEMU 的构建能力。这些组件可能在发行版中不可用,或者对 QEMU 的要求过旧。例如,Avocado 测试框架或各种 linter 都是用 Python 编写的,可以使用 pip 安装。另一个例子是交叉编译器;在这种情况下,可以从 EPEL 等存储库中下载它们,使用 Docker 或 Podman 进行基于容器的交叉编译,或者使用与 QEMU 一起分发的预构建二进制文件。

Windows

该项目旨在支持供应商仍在支持的最新两个 Windows 版本。当前最低支持的 Windows API 是“Windows 8”,因此理论上 QEMU 二进制文件仍然可以在旧版本的 Windows 上运行。然而,这些旧版本的 Windows 不再进行测试,因此建议改用最新的 Windows 版本。

该项目支持使用当前版本的 MinGW 工具链在 Linux(Debian/Fedora)上构建 QEMU,或者在 Windows 上通过 MSYS2 构建。始终推荐使用较新的 Windows 版本,因为这样更不容易在通过 MSYS2 构建时出现问题。QEMU 的构建过程涉及一些调用 os.symlink() 的 Python 脚本,需要特别注意构建过程才能成功完成。在较新的 Windows 10 版本中,如果启用了开发人员模式,非特权帐户可以创建符号链接。如果无法使用或启用开发人员模式,则需要 SeCreateSymbolicLinkPrivilege 特权,或者进程必须以管理员身份运行。

仅支持 64 位 Windows。


© Copyright 2024, The QEMU Project Developers. This documentation is for QEMU version 9.0.50.

http://www.lryc.cn/news/359907.html

相关文章:

  • 摄影后期照片编辑工具:LrC2024 for Mac/win 中文激活版
  • 通关!游戏设计之道Day20
  • 2024年上半年软件设计师试题及答案(回忆版)--选择题
  • 5.28.1 使用卷积神经网络检测乳腺癌
  • 【JavaScript脚本宇宙】JavaScript日期处理神器: 6款顶级库解析
  • C++基础编程100题-002 OpenJudge-1.1-04 输出保留3位小数的浮点数
  • Linux挂载硬盘
  • 用户购物性别模型标签(USG)之决策树模型
  • Mock的用法
  • 内网-win1
  • 中国电子学会(CEIT)2023年09月真题C语言软件编程等级考试三级(含详细解析答案)
  • golang线程池ants-四种使用方法
  • Flutter开发效率提升1000%,Flutter Quick教程之对组件进行拖拽与接收
  • 揭秘小程序商城的团购奇迹:独特模式引领盈利新纪元
  • ssm_mysql_高校自习室预约系统(源码)
  • AI自动化办公:批量将Excel表格英文内容翻译为中文
  • PPT 隐藏开启对象图层
  • PHP火狼大灌篮游戏源码微信+手机wap源码带控制
  • 推荐几首听无数遍也听不腻的好歌(1)
  • 【全开源】Java短剧系统微信小程序+H5+微信公众号+APP 源码
  • 基于Springboot驾校预约平台小程序的设计与实现(源码+数据库+文档)
  • python列表基本运算
  • Pytorch实用教程:pytorch中nn.Linear()用法详解 | 构建多层感知机 | nn.Module的作用 | nn.Sequential的作用
  • 如何利用unicloud阿里云云函数实现文件包括图片或文件上传,unicloud云函数写法一览
  • Django序列化器中is_valid和validate
  • 关于Golang中自定义包的简单使用-Go Mod
  • Dijkstra求最短路篇二(全网最详细讲解两种方法,适合小白)(python,其他语言也适用)
  • Dijkstra求最短路篇一(全网最详细讲解两种方法,适合小白)(python,其他语言也适用)
  • 计算机组成原理06:浮点数运算
  • opencascade 快速显示AIS_ConnectedInteractive源码学习