[nu-demo] hero_voice build fails on fresh VM — needs libclang-dev (bindgen dep for whisper-rs) #169

Closed
opened 2026-04-24 14:48:16 +00:00 by mik-tf · 1 comment
Owner

Symptom

Building hero_voice_server from source on a fresh Ubuntu 24.04 TF Grid VM fails with:

thread 'main' (14528) panicked at .../bindgen-0.72.1/lib.rs:616:27:
Unable to find libclang: "couldn't find any valid shared libraries matching:
  ['libclang.so', 'libclang-*.so', 'libclang.so.*', 'libclang-*.so.*'],
  set the `LIBCLANG_PATH` environment variable to a path where one of these files can be found"

bindgen is pulled in transitively by whisper-rs (or silero-vad-rs) and requires libclang at build time.

Root cause

hero_skills installer's apt-dep list doesn't include libclang-dev. It's listed in the build prereqs for some hero_* crates but not in the flat list that install_base / installers.nu installs.

Fix

Add to hero_skills/tools/modules/installers/installers.nu apt-install list:

libclang-dev

On Ubuntu 24.04 this installs libclang-18-dev (~100 MB). Cannot substitute lighter variants without losing bindgen support.

Demo workaround (applied on herodemo 2026-04-24)

Manually: apt-get install -y libclang-dev. Rebuild succeeds.

  • home#128 — hero_skills installers.nu missing apt dev packages (THIS is a specific missing package to add to that list)
  • home#134 — service_voice commented out in packages.nu (different issue; voice couldn't even be attempted until this is fixed anyway)

Signed-off-by: mik-tf

## Symptom Building hero_voice_server from source on a fresh Ubuntu 24.04 TF Grid VM fails with: ``` thread 'main' (14528) panicked at .../bindgen-0.72.1/lib.rs:616:27: Unable to find libclang: "couldn't find any valid shared libraries matching: ['libclang.so', 'libclang-*.so', 'libclang.so.*', 'libclang-*.so.*'], set the `LIBCLANG_PATH` environment variable to a path where one of these files can be found" ``` `bindgen` is pulled in transitively by `whisper-rs` (or `silero-vad-rs`) and requires libclang at build time. ## Root cause `hero_skills` installer's apt-dep list doesn't include `libclang-dev`. It's listed in the build prereqs for some hero_* crates but not in the flat list that `install_base` / `installers.nu` installs. ## Fix Add to `hero_skills/tools/modules/installers/installers.nu` apt-install list: ``` libclang-dev ``` On Ubuntu 24.04 this installs `libclang-18-dev` (~100 MB). Cannot substitute lighter variants without losing bindgen support. ## Demo workaround (applied on herodemo 2026-04-24) Manually: `apt-get install -y libclang-dev`. Rebuild succeeds. ## Related - [home#128](https://forge.ourworld.tf/lhumina_code/home/issues/128) — hero_skills installers.nu missing apt dev packages (THIS is a specific missing package to add to that list) - [home#134](https://forge.ourworld.tf/lhumina_code/home/issues/134) — service_voice commented out in packages.nu (different issue; voice couldn't even be attempted until this is fixed anyway) Signed-off-by: mik-tf
Author
Owner

Fixed in hero_skills tools/modules/installers/installers.nu.

Verification:

  • L67: pkg_ensure_dev "libclang-dev" # bindgen (espeak-rs-sys, whisper-rs-sys) inside install_base.
  • install_base is called from install_core (L366), so a fresh hero_skills install reaches the libclang-dev step before any cargo build of hero_voice / hero_embedder.
  • Companion pkg_ensure_dev "libespeak-ng-dev" at L68 covers espeak-rs-sys.

Cross-link: home#125 (related apt-dev sweep) was already closed by the same install_base hardening.

Signed-off-by: mik-tf

Fixed in hero_skills `tools/modules/installers/installers.nu`. Verification: - L67: `pkg_ensure_dev "libclang-dev" # bindgen (espeak-rs-sys, whisper-rs-sys)` inside `install_base`. - `install_base` is called from `install_core` (L366), so a fresh `hero_skills` install reaches the libclang-dev step before any cargo build of hero_voice / hero_embedder. - Companion `pkg_ensure_dev "libespeak-ng-dev"` at L68 covers espeak-rs-sys. Cross-link: home#125 (related apt-dev sweep) was already closed by the same install_base hardening. Signed-off-by: mik-tf
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/home#169
No description provided.