Skip to content

Commit 1c901b1

Browse files
committed
Windows 第七条:install 需要的不只是模拟器
只构建模拟器目标之后,meson install --no-rebuild 停在 ERROR: File 'trace/trace-events-all' could not be found 那是 install 步骤要拷贝的一个**生成的**数据文件。在这里点名它、而不是去掉 --no-rebuild,是有意的:去掉那个标志会让 meson 重建全部,于是在 MinGW 下链接不了 的那个单元测试又回来了。
1 parent 67b29e2 commit 1c901b1

1 file changed

Lines changed: 10 additions & 1 deletion

File tree

.github/workflows/build.yml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,16 @@ jobs:
303303
#
304304
# The Unix legs name the target without a suffix and this one with,
305305
# because meson names the target after the file it produces.
306-
ninja -j"$(nproc)" qemu-system-x86_64.exe
306+
# ⚠️ AND THE INSTALL NEEDS MORE THAN THE EMULATOR. With only that
307+
# target built, `meson install --no-rebuild` stops at
308+
#
309+
# ERROR: File 'trace/trace-events-all' could not be found
310+
#
311+
# which is a GENERATED data file the install step copies. Naming it
312+
# here rather than dropping `--no-rebuild` is deliberate: without the
313+
# flag, meson rebuilds everything, which is how the unit test that
314+
# does not link on MinGW comes back.
315+
ninja -j"$(nproc)" qemu-system-x86_64.exe trace/trace-events-all
307316
meson install --no-rebuild
308317
309318
# ── The check that the artifact is an emulator, not a file ────────────

0 commit comments

Comments
 (0)