src/main/tools/process-wrapper-legacy.cc:80: "execvp(external/rules_java++toolchains+remote_java_tools_linux/java_tools/turbine_direct_graal, ...)": No such file or directory

Aperta
#325 8 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
java
Ambito
build-system

Direzione di ricerca

Inizia da src/main/tools/process-wrapper-legacy.cc:80 e riproduci il fallimento con il comando bazel build --vendor_dir=... indicato all'interno della sandbox con derivazione Nix limitata. Usa --sandbox_debug per ispezionare la root di build conservata e determinare perché turbine_direct_graal non può essere eseguito. Il lavoro è completato quando vengono documentati la causa principale e un fix appropriato per questo ambiente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

P3

https://github.com/bazel-contrib/rules_jvm_external/issues/1451 follow-up,

but this time in the right project repo (hopefully) - if I understand correctly?

In https://github.com/enola-dev/enola/issues/1730#issuecomment-3390839018,

where I'm having (too much...) fun with running a Bazel Java build inside a reproducible Nix package "derivation" build,

when running nix run . on https://github.com/enola-dev/enola/pull/1873/files, the @dotdoom and me are running into:

ERROR: /build/home/.cache/bazel/_bazel_nixbld/c122cde4e9cdfc8e96d0ecdf2a867384/external/rules_jvm_external+/private/tools/java/com/github/bazelbuild/rules_jvm_external/BUILD:3:13: Compiling Java headers external/rules_jvm_external+/private/tools/java/com/github/bazelbuild/rules_jvm_external/librules_jvm_external-hjar.jar (3 source files) [for tool] failed: (Exit 1): turbine_direct_graal failed: error executing Turbine command (from target @@rules_jvm_external+//private/tools/java/com/github/bazelbuild/rules_jvm_external:rules_jvm_external) external/rules_java++toolchains+remote_java_tools_linux/java_tools/turbine_direct_graal '-Dturbine.ctSymPath=external/rules_java++toolchains+local_jdk/lib/ct.sym' --output ... (remaining 30 arguments skipped)

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging src/main/tools/process-wrapper-legacy.cc:80: "execvp(external/rules_java++toolchains+remote_java_tools_linux/java_tools/turbine_direct_graal, ...)": No such file or directory

Do you have any suggestions on what could be causing this, and how to fix it?

Note that this Nix package "derivation" build is a restricted sandbox, with a controlled PATH,

within which we run bazel build --vendor_dir=...

I'm struggling to fully grasp what the error message above is trying to tell us.

Surely, whatever exactly that turbine_direct_graal binary is "available"? It's presumably something from rules_java, right?

That "No such file or directory" more likely means... like, what? It's perhaps missing a dynamically linked library that it depends on? That may well be missing in that restrictive Nix sandbox environment. Wouldn't it be simpler to make that binary statically linked? (If this is even the root cause; I'm a little bit out of my depth here.)

@meteorcloudy @cushon @fmeum perhaps you have thoughts about this.

Lingua principale
Starlark
Stelle
103
Fork
102
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di bazelbuild/rules_java

Tutte le issue di bazelbuild/rules_java

Issue simili

Altre issue su Build System

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.