rebuild-toolchain fails while building Jakt support libs: attempts to read AK/Math directory as a file
# The issue
Running `Meta/serenity.sh rebuild-toolchain` on the latest `master` fails during the "build jakt support libs" step.
The Jakt compiler itself builds and installs successfully. The failure occurs afterwards while building the support libraries.
The reported error is:
`Runtime error: Operation not permitted (errno=1)`
However, tracing the process with `strace` shows the actual failure is:
openat(.../Toolchain/Local/jakt/include/runtime/AK/Math, O_RDONLY)
fstat(...) = S_IFDIR
read(...) = -1 EISDIR (Is a directory)
It appears the support-library build is trying to copy `AK/Math` as a regular file even though it is a directory.
`AK/Math` exists in the source tree as a directory containing headers.
This does not appear to be a filesystem permission problem.
# Steps to reproduce:
1. Clone SerenityOS.
2. Run `Meta/serenity.sh rebuild-toolchain`
3. Wait until the "build jakt support libs" step.
# Expected behavior:
The toolchain builds successfully.
# Actual behavior:
The build stops with:
`Runtime error: Operation not permitted (errno=1)`
during the "build jakt support libs" stage.
# Host environment
OS: Ubuntu 24.04 LTS (Noble Numbat)
Filesystem: ext4
Build command: `Meta/serenity.sh rebuild-toolchain`
SerenityOS revision: c2572f33914c1e18ec289f207026417b107d9ba7
2 条评论