---
# System prepended metadata

title: Installing the latest qemu-system-arm on Ubuntu 22.04.4 LTS
tags: [Ubuntu]

---

# Installing the latest qemu-system-arm on Ubuntu 22.04.4 LTS

## Language
[English](#English) | [中文](#中文)

## English
### Created Date
2025/04/01
### Environment
ubuntu-22.04.4-desktop-amd64.iso
> This is console output：
> ```console＝
> $ cat /etc/os-release
> PRETTY_NAME="Ubuntu 22.04.4 LTS"
> NAME="Ubuntu"
> VERSION_ID="22.04"
> VERSION="22.04.4 LTS (Jammy Jellyfish)"
> VERSION_CODENAME=jammy
> ID=ubuntu
> ID_LIKE=debian
> HOME_URL="https://www.ubuntu.com/"
> SUPPORT_URL="https://help.ubuntu.com/"
> BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
> PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
> UBUNTU_CODENAME=jammy
> 
> $ uname -a
> Linux wilkes-evt 6.8.0-52-generic #53~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Jan 15 19:18:46 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
> ```
### Symptom
None
### Cause
The qemu-system-arm version 6.2 was installed from the APT server, but the `ast1030-evb` is not listed among the supported machines.
### Solution
#### Buiild
1. Install a few prerequisite packages which let qemu build successfully.
  - System's packages：
```shell
sudo apt install -y build-essential libglib2.0-dev libpixman-1-dev zlib1g-dev git python3-pip ninja-build
```
  - Python's packages：
```shell
pip install tomli
```
2. Download QEMU source code and enter the directory.
```shell
git clone https://gitlab.com/qemu-project/qemu.git
cd qemu
```
3. Configure the build target.
  - To support ARM platform
```shell
./configure --target-list=arm-softmmu,arm-linux-user --enable-slirp
```
> `--target-list=arm-softmmu`：set target list, it's for system mode.
> 
> `--target-list=arm-linux-user`：set target list, it's for user mode.
> 
> `--enable-slirp`：libslirp user mode network backend support
  - To support AARCH64 platform
```shell
./configure --target-list=aarch64-softmmu,aarch64-linux-user --enable-slirp
```
> `--target-list=aarch64-softmmu`：set target list, it's for system mode.
> 
> `--target-list=aarch64-linux-user`：set target list, it's for user mode.
> 
> `--enable-slirp`：libslirp user mode network backend support
  - Both support ARM and AARCH64 platform
```shell
./configure --target-list=arm-softmmu,arm-linux-user,aarch64-softmmu,aarch64-linux-user --enable-slirp
```
4. Compile QEMU.
```shell
make -j$(nproc)
```
#### Method 1：Use directly
1. Execute binary in build directory.
  - Check version for ARM platform：
```shell
./build/qemu-system-arm --version
```
> This is console output：
> ```console＝
> $ ./build/qemu-system-arm --version
> QEMU emulator version 10.0.50 (v10.0.0-529-g5134cf9b5d)
> Copyright (c) 2003-2025 Fabrice Bellard and the QEMU Project developers
> ```
  - Check version for AARCH64 platform：
```shell
./build/qemu-system-aarch64 --version
```
> This is console output：
> ```console＝
> $ ./build/qemu-system-aarch64 --version
> QEMU emulator version 10.0.50 (v10.0.0-529-g5134cf9b5d)
> Copyright (c) 2003-2025 Fabrice Bellard and the QEMU Project developers
> ```
#### Method 2：Install into system environment
1. Install into system.
```shell
sudo make install
```
2. Verify the installation is success.
```shell
qemu-system-arm --version
```
> This is console output：
> ```console＝
> $ qemu-system-arm --version
> QEMU emulator version 10.0.50 (v10.0.0-529-g5134cf9b5d)
> Copyright (c) 2003-2025 Fabrice Bellard and the QEMU Project developers
> ```
#### Extension
`ast1030-evb` is supported in the latest version.
> This is console output：
> ```console＝
> $ qemu-system-arm -machine help
> Supported machines are:
> ast1030-evb          Aspeed AST1030 MiniBMC (Cortex-M4)
> ast2500-evb          Aspeed AST2500 EVB (ARM1176)
> ast2600-evb          Aspeed AST2600 EVB (Cortex-A7)
> b-l475e-iot01a       B-L475E-IOT01A Discovery Kit (Cortex-M4)
> bletchley-bmc        Facebook Bletchley BMC (Cortex-A7)
> bpim2u               Bananapi M2U (Cortex-A7)
> canon-a1100          Canon PowerShot A1100 IS (ARM946)
> collie               Sharp SL-5500 (Collie) PDA (SA-1110)
> cubieboard           cubietech cubieboard (Cortex-A8)
> emcraft-sf2          SmartFusion2 SOM kit from Emcraft (M2S010)
> fby35-bmc            Facebook fby35 BMC (Cortex-A7)
> fby35                Meta Platforms fby35
> fp5280g2-bmc         Inspur FP5280G2 BMC (ARM1176)
> fuji-bmc             Facebook Fuji BMC (Cortex-A7)
> g220a-bmc            Bytedance G220A BMC (ARM1176)
> highbank             Calxeda Highbank (ECX-1000)
> imx25-pdk            ARM i.MX25 PDK board (ARM926)
> integratorcp         ARM Integrator/CP (ARM926EJ-S)
> kudo-bmc             Kudo BMC (Cortex-A9)
> kzm                  ARM KZM Emulation Baseboard (ARM1136)
> lm3s6965evb          Stellaris LM3S6965EVB (Cortex-M3)
> lm3s811evb           Stellaris LM3S811EVB (Cortex-M3)
> mcimx6ul-evk         Freescale i.MX6UL Evaluation Kit (Cortex-A7)
> mcimx7d-sabre        Freescale i.MX7 DUAL SABRE (Cortex-A7)
> microbit             BBC micro:bit (Cortex-M0)
> midway               Calxeda Midway (ECX-2000)
> mori-bmc             Mori BMC (Cortex-A9)
> mps2-an385           ARM MPS2 with AN385 FPGA image for Cortex-M3
> mps2-an386           ARM MPS2 with AN386 FPGA image for Cortex-M4
> mps2-an500           ARM MPS2 with AN500 FPGA image for Cortex-M7
> mps2-an505           ARM MPS2 with AN505 FPGA image for Cortex-M33
> mps2-an511           ARM MPS2 with AN511 DesignStart FPGA image for Cortex-M3
> mps2-an521           ARM MPS2 with AN521 FPGA image for dual Cortex-M33
> mps3-an524           ARM MPS3 with AN524 FPGA image for dual Cortex-M33
> mps3-an536           ARM MPS3 with AN536 FPGA image for Cortex-R52
> mps3-an547           ARM MPS3 with AN547 FPGA image for Cortex-M55
> musca-a              ARM Musca-A board (dual Cortex-M33)
> musca-b1             ARM Musca-B1 board (dual Cortex-M33)
> musicpal             Marvell 88w8618 / MusicPal (ARM926EJ-S)
> netduino2            Netduino 2 Machine (Cortex-M3)
> netduinoplus2        Netduino Plus 2 Machine (Cortex-M4)
> none                 empty machine
> npcm750-evb          Nuvoton NPCM750 Evaluation Board (Cortex-A9)
> nuri                 Samsung NURI board (Exynos4210)
> olimex-stm32-h405    Olimex STM32-H405 (Cortex-M4)
> orangepi-pc          Orange Pi PC (Cortex-A7)
> palmetto-bmc         OpenPOWER Palmetto BMC (ARM926EJ-S)
> qcom-dc-scm-v1-bmc   Qualcomm DC-SCM V1 BMC (Cortex A7)
> qcom-firework-bmc    Qualcomm DC-SCM V1/Firework BMC (Cortex A7)
> quanta-gbs-bmc       Quanta GBS (Cortex-A9)
> quanta-gsj           Quanta GSJ (Cortex-A9)
> quanta-q71l-bmc      Quanta-Q71l BMC (ARM926EJ-S)
> rainier-bmc          IBM Rainier BMC (Cortex-A7)
> raspi0               Raspberry Pi Zero (revision 1.2)
> raspi1ap             Raspberry Pi A+ (revision 1.1)
> raspi2b              Raspberry Pi 2B (revision 1.1)
> realview-eb          ARM RealView Emulation Baseboard (ARM926EJ-S)
> realview-eb-mpcore   ARM RealView Emulation Baseboard (ARM11MPCore)
> realview-pb-a8       ARM RealView Platform Baseboard for Cortex-A8
> realview-pbx-a9      ARM RealView Platform Baseboard Explore for Cortex-A9
> romulus-bmc          OpenPOWER Romulus BMC (ARM1176)
> sabrelite            Freescale i.MX6 Quad SABRE Lite Board (Cortex-A9)
> smdkc210             Samsung SMDKC210 board (Exynos4210)
> sonorapass-bmc       OCP SonoraPass BMC (ARM1176)
> stm32vldiscovery     ST STM32VLDISCOVERY (Cortex-M3)
> supermicro-x11spi-bmc Supermicro X11 SPI BMC (ARM1176)
> supermicrox11-bmc    Supermicro X11 BMC (ARM926EJ-S)
> sx1                  Siemens SX1 (OMAP310) V2
> sx1-v1               Siemens SX1 (OMAP310) V1
> tiogapass-bmc        Facebook Tiogapass BMC (ARM1176)
> versatileab          ARM Versatile/AB (ARM926EJ-S)
> versatilepb          ARM Versatile/PB (ARM926EJ-S)
> vexpress-a15         ARM Versatile Express for Cortex-A15
> vexpress-a9          ARM Versatile Express for Cortex-A9
> virt                 QEMU 10.0 ARM Virtual Machine (alias of virt-10.0)
> virt-10.0            QEMU 10.0 ARM Virtual Machine
> virt-2.10            QEMU 2.10 ARM Virtual Machine (deprecated)
> virt-2.11            QEMU 2.11 ARM Virtual Machine (deprecated)
> virt-2.12            QEMU 2.12 ARM Virtual Machine (deprecated)
> virt-2.6             QEMU 2.6 ARM Virtual Machine (deprecated)
> virt-2.7             QEMU 2.7 ARM Virtual Machine (deprecated)
> virt-2.8             QEMU 2.8 ARM Virtual Machine (deprecated)
> virt-2.9             QEMU 2.9 ARM Virtual Machine (deprecated)
> virt-3.0             QEMU 3.0 ARM Virtual Machine (deprecated)
> virt-3.1             QEMU 3.1 ARM Virtual Machine (deprecated)
> virt-4.0             QEMU 4.0 ARM Virtual Machine (deprecated)
> virt-4.1             QEMU 4.1 ARM Virtual Machine (deprecated)
> virt-4.2             QEMU 4.2 ARM Virtual Machine (deprecated)
> virt-5.0             QEMU 5.0 ARM Virtual Machine (deprecated)
> virt-5.1             QEMU 5.1 ARM Virtual Machine (deprecated)
> virt-5.2             QEMU 5.2 ARM Virtual Machine (deprecated)
> virt-6.0             QEMU 6.0 ARM Virtual Machine (deprecated)
> virt-6.1             QEMU 6.1 ARM Virtual Machine (deprecated)
> virt-6.2             QEMU 6.2 ARM Virtual Machine (deprecated)
> virt-7.0             QEMU 7.0 ARM Virtual Machine
> virt-7.1             QEMU 7.1 ARM Virtual Machine
> virt-7.2             QEMU 7.2 ARM Virtual Machine
> virt-8.0             QEMU 8.0 ARM Virtual Machine
> virt-8.1             QEMU 8.1 ARM Virtual Machine
> virt-8.2             QEMU 8.2 ARM Virtual Machine
> virt-9.0             QEMU 9.0 ARM Virtual Machine
> virt-9.1             QEMU 9.1 ARM Virtual Machine
> virt-9.2             QEMU 9.2 ARM Virtual Machine
> witherspoon-bmc      OpenPOWER Witherspoon BMC (ARM1176)
> xilinx-zynq-a9       Xilinx Zynq 7000 Platform Baseboard for Cortex-A9
> yosemitev2-bmc       Facebook YosemiteV2 BMC (ARM1176)
> ```
### Reference
None

## 中文
### 建立日期
2025/04/01
### 環境
ubuntu-22.04.4-desktop-amd64.iso
> 這是控制台輸出：
> ```console＝
> $ cat /etc/os-release
> PRETTY_NAME="Ubuntu 22.04.4 LTS"
> NAME="Ubuntu"
> VERSION_ID="22.04"
> VERSION="22.04.4 LTS (Jammy Jellyfish)"
> VERSION_CODENAME=jammy
> ID=ubuntu
> ID_LIKE=debian
> HOME_URL="https://www.ubuntu.com/"
> SUPPORT_URL="https://help.ubuntu.com/"
> BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
> PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
> UBUNTU_CODENAME=jammy
> 
> $ uname -a
> Linux wilkes-evt 6.8.0-52-generic #53~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Jan 15 19:18:46 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
> ```
### 症狀
無
### 原因
從 APT 伺服器安裝的 qemu-system-arm 版本是 6.2 ，但「ast1030-evb」未列在支援的機器中。
### 解決方案
#### 建造
1. 安裝一些使 qemu 成功建置的必備軟體包。
  - 系統的軟體包：
```shell
sudo apt install -y build-essential libglib2.0-dev libpixman-1-dev zlib1g-dev git python3-pip ninja-build
```
  - Python 的軟體包：
```shell
pip install tomli
```
2. 下載 QEMU 原始碼並進入目錄。
```shell
git clone https://gitlab.com/qemu-project/qemu.git
cd qemu
```
3. 配置建置目標。
  - 支援 ARM 平台
```shell
./configure --target-list=arm-softmmu,arm-linux-user --enable-slirp
```
> `--target-list=arm-softmmu`：設定目標，用於系統模式。
> 
> `--target-list=arm-linux-user`：設定目標，用於使用者模式。
> 
> `--enable-slirp`：libslirp 用戶模式網路支持。
  - 支援 AARCH64 平台
```shell
./configure --target-list=aarch64-softmmu,aarch64-linux-user --enable-slirp
```
> `--target-list=aarch64-softmmu`：設定目標，用於系統模式。
> 
> `--target-list=aarch64-linux-user`：設定目標，用於使用者模式。
> 
> `--enable-slirp`：libslirp 用戶模式網路支持。
  - 支援 ARM 和 AARCH64 平台
```shell
./configure --target-list=arm-softmmu,arm-linux-user,aarch64-softmmu,aarch64-linux-user --enable-slirp
```
4. 編譯 QEMU。
```shell
make -j$(nproc)
```
#### 方法 1：直接使用
1. 在建置目錄中執行二進位檔案。
  - 檢查 ARM 平台的版本：
```shell
./build/qemu-system-arm --version
```
> 這是控制台輸出：
> ```console＝
> $ ./build/qemu-system-arm --version
> QEMU emulator version 10.0.50 (v10.0.0-529-g5134cf9b5d)
> Copyright (c) 2003-2025 Fabrice Bellard and the QEMU Project developers
> ```
  - 檢查 AARCH64 平台的版本：
```shell
./build/qemu-system-aarch64 --version
```
> 這是控制台輸出：
> ```console＝
> $ ./build/qemu-system-aarch64 --version
> QEMU emulator version 10.0.50 (v10.0.0-529-g5134cf9b5d)
> Copyright (c) 2003-2025 Fabrice Bellard and the QEMU Project developers
> ```
#### 方法 2：安裝到系統環境中
1. 安裝到系統中。
```shell
sudo make install
```
2. 驗證安裝是否成功。
```shell
qemu-system-arm --version
```
> 這是控制台輸出：
> ```console＝
> $ qemu-system-arm --version
> QEMU emulator version 10.0.50 (v10.0.0-529-g5134cf9b5d)
> Copyright (c) 2003-2025 Fabrice Bellard and the QEMU Project developers
> ```
#### 延伸
最新版本支援`ast1030-evb`。
> 這是控制台輸出：
> ```console＝
> $ qemu-system-arm -machine help
> Supported machines are:
> ast1030-evb          Aspeed AST1030 MiniBMC (Cortex-M4)
> ast2500-evb          Aspeed AST2500 EVB (ARM1176)
> ast2600-evb          Aspeed AST2600 EVB (Cortex-A7)
> b-l475e-iot01a       B-L475E-IOT01A Discovery Kit (Cortex-M4)
> bletchley-bmc        Facebook Bletchley BMC (Cortex-A7)
> bpim2u               Bananapi M2U (Cortex-A7)
> canon-a1100          Canon PowerShot A1100 IS (ARM946)
> collie               Sharp SL-5500 (Collie) PDA (SA-1110)
> cubieboard           cubietech cubieboard (Cortex-A8)
> emcraft-sf2          SmartFusion2 SOM kit from Emcraft (M2S010)
> fby35-bmc            Facebook fby35 BMC (Cortex-A7)
> fby35                Meta Platforms fby35
> fp5280g2-bmc         Inspur FP5280G2 BMC (ARM1176)
> fuji-bmc             Facebook Fuji BMC (Cortex-A7)
> g220a-bmc            Bytedance G220A BMC (ARM1176)
> highbank             Calxeda Highbank (ECX-1000)
> imx25-pdk            ARM i.MX25 PDK board (ARM926)
> integratorcp         ARM Integrator/CP (ARM926EJ-S)
> kudo-bmc             Kudo BMC (Cortex-A9)
> kzm                  ARM KZM Emulation Baseboard (ARM1136)
> lm3s6965evb          Stellaris LM3S6965EVB (Cortex-M3)
> lm3s811evb           Stellaris LM3S811EVB (Cortex-M3)
> mcimx6ul-evk         Freescale i.MX6UL Evaluation Kit (Cortex-A7)
> mcimx7d-sabre        Freescale i.MX7 DUAL SABRE (Cortex-A7)
> microbit             BBC micro:bit (Cortex-M0)
> midway               Calxeda Midway (ECX-2000)
> mori-bmc             Mori BMC (Cortex-A9)
> mps2-an385           ARM MPS2 with AN385 FPGA image for Cortex-M3
> mps2-an386           ARM MPS2 with AN386 FPGA image for Cortex-M4
> mps2-an500           ARM MPS2 with AN500 FPGA image for Cortex-M7
> mps2-an505           ARM MPS2 with AN505 FPGA image for Cortex-M33
> mps2-an511           ARM MPS2 with AN511 DesignStart FPGA image for Cortex-M3
> mps2-an521           ARM MPS2 with AN521 FPGA image for dual Cortex-M33
> mps3-an524           ARM MPS3 with AN524 FPGA image for dual Cortex-M33
> mps3-an536           ARM MPS3 with AN536 FPGA image for Cortex-R52
> mps3-an547           ARM MPS3 with AN547 FPGA image for Cortex-M55
> musca-a              ARM Musca-A board (dual Cortex-M33)
> musca-b1             ARM Musca-B1 board (dual Cortex-M33)
> musicpal             Marvell 88w8618 / MusicPal (ARM926EJ-S)
> netduino2            Netduino 2 Machine (Cortex-M3)
> netduinoplus2        Netduino Plus 2 Machine (Cortex-M4)
> none                 empty machine
> npcm750-evb          Nuvoton NPCM750 Evaluation Board (Cortex-A9)
> nuri                 Samsung NURI board (Exynos4210)
> olimex-stm32-h405    Olimex STM32-H405 (Cortex-M4)
> orangepi-pc          Orange Pi PC (Cortex-A7)
> palmetto-bmc         OpenPOWER Palmetto BMC (ARM926EJ-S)
> qcom-dc-scm-v1-bmc   Qualcomm DC-SCM V1 BMC (Cortex A7)
> qcom-firework-bmc    Qualcomm DC-SCM V1/Firework BMC (Cortex A7)
> quanta-gbs-bmc       Quanta GBS (Cortex-A9)
> quanta-gsj           Quanta GSJ (Cortex-A9)
> quanta-q71l-bmc      Quanta-Q71l BMC (ARM926EJ-S)
> rainier-bmc          IBM Rainier BMC (Cortex-A7)
> raspi0               Raspberry Pi Zero (revision 1.2)
> raspi1ap             Raspberry Pi A+ (revision 1.1)
> raspi2b              Raspberry Pi 2B (revision 1.1)
> realview-eb          ARM RealView Emulation Baseboard (ARM926EJ-S)
> realview-eb-mpcore   ARM RealView Emulation Baseboard (ARM11MPCore)
> realview-pb-a8       ARM RealView Platform Baseboard for Cortex-A8
> realview-pbx-a9      ARM RealView Platform Baseboard Explore for Cortex-A9
> romulus-bmc          OpenPOWER Romulus BMC (ARM1176)
> sabrelite            Freescale i.MX6 Quad SABRE Lite Board (Cortex-A9)
> smdkc210             Samsung SMDKC210 board (Exynos4210)
> sonorapass-bmc       OCP SonoraPass BMC (ARM1176)
> stm32vldiscovery     ST STM32VLDISCOVERY (Cortex-M3)
> supermicro-x11spi-bmc Supermicro X11 SPI BMC (ARM1176)
> supermicrox11-bmc    Supermicro X11 BMC (ARM926EJ-S)
> sx1                  Siemens SX1 (OMAP310) V2
> sx1-v1               Siemens SX1 (OMAP310) V1
> tiogapass-bmc        Facebook Tiogapass BMC (ARM1176)
> versatileab          ARM Versatile/AB (ARM926EJ-S)
> versatilepb          ARM Versatile/PB (ARM926EJ-S)
> vexpress-a15         ARM Versatile Express for Cortex-A15
> vexpress-a9          ARM Versatile Express for Cortex-A9
> virt                 QEMU 10.0 ARM Virtual Machine (alias of virt-10.0)
> virt-10.0            QEMU 10.0 ARM Virtual Machine
> virt-2.10            QEMU 2.10 ARM Virtual Machine (deprecated)
> virt-2.11            QEMU 2.11 ARM Virtual Machine (deprecated)
> virt-2.12            QEMU 2.12 ARM Virtual Machine (deprecated)
> virt-2.6             QEMU 2.6 ARM Virtual Machine (deprecated)
> virt-2.7             QEMU 2.7 ARM Virtual Machine (deprecated)
> virt-2.8             QEMU 2.8 ARM Virtual Machine (deprecated)
> virt-2.9             QEMU 2.9 ARM Virtual Machine (deprecated)
> virt-3.0             QEMU 3.0 ARM Virtual Machine (deprecated)
> virt-3.1             QEMU 3.1 ARM Virtual Machine (deprecated)
> virt-4.0             QEMU 4.0 ARM Virtual Machine (deprecated)
> virt-4.1             QEMU 4.1 ARM Virtual Machine (deprecated)
> virt-4.2             QEMU 4.2 ARM Virtual Machine (deprecated)
> virt-5.0             QEMU 5.0 ARM Virtual Machine (deprecated)
> virt-5.1             QEMU 5.1 ARM Virtual Machine (deprecated)
> virt-5.2             QEMU 5.2 ARM Virtual Machine (deprecated)
> virt-6.0             QEMU 6.0 ARM Virtual Machine (deprecated)
> virt-6.1             QEMU 6.1 ARM Virtual Machine (deprecated)
> virt-6.2             QEMU 6.2 ARM Virtual Machine (deprecated)
> virt-7.0             QEMU 7.0 ARM Virtual Machine
> virt-7.1             QEMU 7.1 ARM Virtual Machine
> virt-7.2             QEMU 7.2 ARM Virtual Machine
> virt-8.0             QEMU 8.0 ARM Virtual Machine
> virt-8.1             QEMU 8.1 ARM Virtual Machine
> virt-8.2             QEMU 8.2 ARM Virtual Machine
> virt-9.0             QEMU 9.0 ARM Virtual Machine
> virt-9.1             QEMU 9.1 ARM Virtual Machine
> virt-9.2             QEMU 9.2 ARM Virtual Machine
> witherspoon-bmc      OpenPOWER Witherspoon BMC (ARM1176)
> xilinx-zynq-a9       Xilinx Zynq 7000 Platform Baseboard for Cortex-A9
> yosemitev2-bmc       Facebook YosemiteV2 BMC (ARM1176)
> ```
### 參考
無
