Install
$ agentstack add skill-processmission-oh-my-qemu-qemu-build ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
QEMU Build
Use this operational skill when the task asks to inspect, configure, build, reconfigure, or diagnose a QEMU build.
Flow relationship
- For non-trivial work,
qemu-flow-planowns the plan and artifact root. qemu-buildowns only build-directory decisions and build evidence.- Store copied logs, command transcripts, and diagnosis reports under
build/agent//.
Hard policy boundary
Do not produce source code intended for QEMU upstream submission. Do not add DCO or review trailers.
Build directory rule
Default to build/ in the QEMU source tree. Reuse it when suitable.
Before creating or reconfiguring anything, inspect:
build/config.logfor the configure command;build/build.ninjafor configured state;build/pyvenv/bin/mesonfor Meson commands;build/meson-logs/meson-log.txtfor configure failures;build/meson-info/intro-buildoptions.jsonfor options.
Create another directory only when needed to preserve a different configuration, such as sanitizer vs non-sanitizer.
Configure
From the QEMU source root:
mkdir -p build
cd build
../configure --target-list=
Common targets:
x86_64-softmmuaarch64-softmmuriscv64-softmmuloongarch64-softmmux86_64-linux-useraarch64-linux-user
Useful options:
--enable-debug--enable-debug-info--enable-trace-backends=log--enable-asan--enable-tsan--enable-ubsan
Use ../configure --help for the checked-out QEMU version.
Reconfigure safely
Reconstruct the old command from build/config.log, then change only the needed option.
Preserve:
- target list unless the task changes it;
- debug/sanitizer/trace options;
- dependency/accelerator options;
- build directory evidence until diagnosis is complete.
Do not delete build/ to make an error disappear.
Build
From the source root:
ninja -C build
Prefer narrow targets when possible:
ninja -C build qemu-system-riscv64
ninja -C build tests/qtest/
Use verbose mode only for diagnosis:
ninja -C build -v
Failure classification
- Configure: missing dependency, unsupported option, Python/Meson issue, compiler mismatch.
- Compile: API/type/include/feature guard mismatch.
- Link: missing object in Meson, missing dependency, target-specific source not linked.
- Generated source: QAPI, trace-events, decodetree, or Meson generator input.
- Toolchain/host: sanitizer or compiler incompatibility.
For generated-source failures, fix the generator input, not generated files in build/.
Report
Write/report:
- PASS/FAIL/INCONCLUSIVE;
- source root and build dir;
- exact command;
- target list and key options;
- decisive failure excerpt;
- full log paths under
build/and copied notes underbuild/agent//; - what the build proves.
Upstream references
- QEMU code provenance and AI policy:
docs/devel/code-provenance.rst. - QEMU RFC
qemu-buildskill. - Testing overview:
docs/devel/testing/main.rst.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: processmission
- Source: processmission/oh-my-qemu
- License: MIT
- Homepage: https://processmission.github.io/oh-my-qemu/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.