私はクレートに(間接的に)依存するRustアプリケーション用のCIを設定していますlibudev-sys
。このCIの一部は私の箱を作ることを意味し、それは建物も意味しますlibudev-sys
。
ワークフローが実行されてビルドフェーズに入ると、次のエラーメッセージでビルドしようとすると貨物が失敗しますlibudev-sys
。
thread 'main' panicked at /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/libudev-sys-0.1.4/build.rs:38:41:
called `Result::unwrap()` on an `Err` value:
`PKG_CONFIG_ALLOW_SYSTEM_CFLAGS="1" PKG_CONFIG_ALLOW_SYSTEM_LIBS="1" "pkg-config" "--libs" "--cflags" "libudev"` did not exit successfully: exit status: 1
error: could not find system library 'libudev' required by the 'libudev-sys' crate
Package libudev was not found in the pkg-config search path.
Perhaps you should add the directory containing `libudev.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libudev' found
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
各変更をコミットしてリポジトリにプッシュしてからワークフローが実行されるのを待つ必要があるため、この問題をデバッグするのが困難です。これは私のシステムで発生するエラーではありません。
~によるとこのページはUbuntuの最新環境についてです。、systemd
設置済み(提供済みlibudev
)および(pkg-config
したがってapt
この回答関連する質問の内容は適用されません。)
systemd
以下を使用してインストールsudo apt-get update
しようとしましたが、すでにインストールされているとsudo apt-get install systemd
表示されます。systemd
私もPKG_CONFIG_PATH
次のように更新しようとしましたこの回答しかし、それも動作しません。
答え1
@steeldriverが述べたように、パッケージが必要であることがわかりましたlibudev-dev
。とをlibudev-dev
使用してインストールに成功しました。sudo apt-get update
sudo apt-get install libudev-dev