Add automated QEMU compilation and installation script for Ubuntu 22.04 with ARM/AArch64 support and configurable lock handling#1
Conversation
Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
|
@copilot 必須支援這隻script的所有選項 #!/bin/bash 1. 設定路徑變數SDK_PATH="/home/peter/ASPEED_SDK/SDK_v10.00" 2. 檢查目錄是否存在if [ ! -d "${IMG_DIR}" ]; then 3. 自動檢查並調整 image-bmc 大小 (AST2700 必須為 128MB)BMC_IMG="${IMG_DIR}/image-bmc" 4. 執行 QEMUecho "正在啟動 AST2700 A1 模擬器 (2026 版本)..." sudo qemu-system-aarch64 -M ast2700a1-evb |
… BMC Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
已完成支援 AST2700 及所有 ARM/AArch64 系統所需的選項。腳本現在包含: ✅ 您的 AST2700 腳本中的所有選項都已支援,包括:
README 中也新增了 ARM/AST2700 使用範例。 Commit: 55ac16d |
Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
|
@copilot 我想要每次執行時,如果git qemu 有最新版,編譯並安裝最新版,如果已是最新版,不作任何事 |
Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
已實現智能版本檢查功能。腳本現在會: ✅ 每次執行時檢查 Git 倉庫的最新版本 新增功能:
這使腳本適合定期運行(例如通過 cron)以自動保持 QEMU 更新,而不會浪費時間重新編譯相同版本。 Commit: 072b55d |
…entation Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
|
@copilot �[0;34m[INFO]�[0m Installation started at 公曆 20廿六年 一月 九日 週五 十一時三分43秒 |
錯誤原因:Ubuntu 的自動更新服務(unattended-upgrades,進程 ID 4040)正在運行,佔用了 dpkg 鎖定檔案,導致腳本無法安裝套件。 發生原因: 解決方案:
正在實現修復... Commit: 即將提交 |
…icts Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
|
@copilot 請不要這樣作, 當ubuntu 正在背景更新,顯示正在背景更新, 無法安奘或檢查qemu,請使用者等自動更新完再執行 |
…round updates Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
已按要求修改。腳本現在會: ✅ 檢測套件管理器鎖定狀態 不再自動等待或嘗試繼續執行。 顯示訊息示例: Commit: 17ea451 |
|
@copilot 請問兩個版本可以用選項兼容嗎, 然後設計選項可以填最長等多久 |
…minutes) Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
已實現兩種模式兼容,可透過命令列選項配置: 新增 ✅ 預設行為(符合您的新需求):自動等待最長 15 分鐘(900 秒) sudo bash install_qemu_latest.sh
# 或明確指定
sudo bash install_qemu_latest.sh --wait-lock 900✅ 自訂等待時間: # 等待 5 分鐘(300 秒)
sudo bash install_qemu_latest.sh --wait-lock 300
# 等待 30 分鐘(1800 秒)
sudo bash install_qemu_latest.sh --wait-lock 1800✅ 立即退出(不等待): sudo bash install_qemu_latest.sh --wait-lock 0✅ 查看說明: sudo bash install_qemu_latest.sh --help行為說明:
Commit: 6899de8 |
|
@copilot [SUCCESS] Git submodules updated successfully *** Ouch! *** found no usable tomli, please install it |
Co-authored-by: PeterKchen2 <130538885+PeterKchen2@users.noreply.github.com>
已修復缺少 錯誤原因: 解決方案: 修改內容:
重新執行腳本即可成功編譯 QEMU。 Commit: 431ba3b
已修復缺少 為什麼一開始沒有包含:
錯誤原因: 解決方案: 修改內容:
重新執行腳本即可成功編譯 QEMU。 Commit: 431ba3b |
|
@copilot 請問ubuntu 24.04 需要python3-tomli嗎 |
Ubuntu 24.04 不需要 原因:
版本對應:
目前腳本: 如果您需要同時支援兩個版本,目前的腳本已經適用。 |
|
@copilot ubuntu 24.04 可以編譯openbmc嗎 |
可以,Ubuntu 24.04 可以編譯 OpenBMC 相容性說明:
建議配置:
可能需要的套件: sudo apt-get install gawk wget git diffstat unzip texinfo \
gcc build-essential chrpath socat cpio python3 python3-pip \
python3-pexpect xz-utils debianutils iputils-ping python3-git \
python3-jinja2 python3-subunit zstd liblz4-tool file locales \
libacl1注意事項:
與此腳本的關係: |
Implementation Plan for QEMU Installation Script
install_qemu_latest.shwith the following features:Original prompt
This pull request was created from Copilot chat.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.