indygreg / indygreg/PyOxidizer

SIGKILL during cargo build breaks dep-graph.bin: No such file or directory (os error 2)

Open
#186 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
6.2k
Forks
256
PR merge metrics
No merged PRs in 30d

Description

```console
> pyoxidizer build
...
libpythonXY created
writing packaging state to /path/to/project/build/target/x86_64-unknown-linux-gnu/debug/pyoxidizer/packaging_state.cbor
Compiling pyembed v0.5.0 (/path/to/project/pyembed)
error: Could not compile `pyembed`.

Caused by:
process didn't exit successfully: `rustc --edition=2018 --crate-name pyembed pyembed/src/lib.rs --color always --crate-type lib --emit=dep-info,metadata,link -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="jemalloc"' --cfg 'feature="jemalloc-sys"' -C metadata=2fb60b40730f4175 -C extra-filename=-2fb60b40730f4175 --out-dir /path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps --target x86_64-unknown-linux-gnu -C incremental=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/incremental -L dependency=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps -L dependency=/path/to/project/build/target/debug/deps --extern byteorder=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps/libbyteorder-51f4c6faa0799905.rmeta --extern cpython=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps/libcpython-1dcbd4fbd6bb7346.rmeta --extern jemalloc_sys=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps/libjemalloc_sys-ead4162039b1425f.rmeta --extern lazy_static=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps/liblazy_static-beeef7daa33a3626.rmeta --extern libc=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps/liblibc-068e516cac61e09b.rmeta --extern python3_sys=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps/libpython3_sys-858a9505d4adf860.rmeta --extern uuid=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/deps/libuuid-1684e2e66f27cf44.rmeta -L native=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/pyoxidizer -l static=pyembeddedconfig -l static=X11 -l static=Xau -l static=bz2 -l static=crypto -l static=db -l static=ffi -l static=lzma -l static=ncurses -l static=panel -l static=readline -l static=sqlite3 -l static=ssl -l static=tcl8.6 -l static=tk8.6 -l static=uuid -l static=xcb -l static=z -l dl -l m -l brotlidec -l brotlienc -l ffi -l stdc++ -l yaml -l static=pythonXY -L native=/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/build/jemalloc-sys-9618166122dcb73e/out/build/lib` (signal: 9, SIGKILL: kill)
error: cargo build failed
> pyoxidizer build
Compiling pyembed v0.5.0 (/path/to/project/pyembed)
error: Failed to delete invalidated or incompatible incremental compilation session directory contents `/path/to/project/build/target/x86_64-unknown-linux-gnu/debug/incremental/pyembed-ibc69eo079a5/s-fhpjst53y5-1eco78u-working/dep-graph.bin`: No such file or directory (os error 2).

error: aborting due to previous error

error: Could not compile `pyembed`.

To learn more, run the command again with --verbose.
error: cargo build failed
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing `pyoxidizer build` and inspect the Rust incremental compilation directory under `build/target/x86_64-unknown-linux-gnu/debug/incremental/pyembed-*`. Trace what happens after rustc is killed with SIGKILL; done should prevent the follow-up missing `dep-graph.bin` error or otherwise recover cleanly on the next build.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.