pkg-config는 수동 개입 없이는 라이브러리를 찾을 수 없습니다

pkg-config는 수동 개입 없이는 라이브러리를 찾을 수 없습니다

저는 C++ 개발자가 아니며 일반적으로 Conan, CMake 또는 Makefile을 사용합니다. pkg-configConan이 오류를 겪고 패키지를 구문 분석할 수 없게 되었을 때 어제 처음으로 이 이야기를 들었습니다 gl.

나는 그것을 작동하게 만들었습니다 export PKG_CONFIG_PATH="/usr/lib/x86_64-linux-gnu/pkgconfig".

오늘 빌드를 시도했지만 실패 spotify_player하여 라이브러리를 cargo찾을 수 없습니다 .alsa

  --- stderr
  thread 'main' panicked at '`PKG_CONFIG_ALLOW_SYSTEM_CFLAGS="1" PKG_CONFIG_ALLOW_SYSTEM_LIBS="1" "pkg-config" "--libs" "--cflags" "alsa"` did not exit successfully: exit status: 1
  error: could not find system library 'alsa' required by the 'alsa-sys' crate

  --- stderr
  Package alsa was not found in the pkg-config search path.
  Perhaps you should add the directory containing `alsa.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'alsa' found
  ', /home/xevion/.cargo/registry/src/index.crates.io-6f17d22bba15001f/alsa-sys-0.3.1/build.rs:13:18
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

나는 주위를 둘러보며 alsa.pc알아차렸다 /usr/lib/x86_64-linux-gnu/pkgconfig/alsa.pc. 위와 동일한 방법으로 변수를 내보내면 문제가 해결됩니다.

즉, 작동하는 동안 문제가 발생했습니다. spotify_sound몇 달 전과 똑같은 방식으로 제작하고 설치할 수 있었습니다 . 아무것도 바뀌어서는 안 됩니다.

  • alsa, 및 관련된 모든 라이브러리를 다시 설치했습니다 pkg-config.
  • 나는 새로운 터미널 세션에서 일하고 있습니다.
  • pkg-config발견되지 않은 것을 확인했습니다 pkg-config --debug alsa.
  • Lenovo ThinkPad X1 Carbon Gen 6에서 Pop!_OS 22.04 LTS(Ubuntu 22.04)를 실행합니다.

.pc파일은 내 컴퓨터에서 찾을 수 있습니다. 내 컴퓨터에서 내보내는 것은 .bashrc어리석은 해결책처럼 보입니다. 뭔가 더 큰 수준에서 진행되고 있습니다.

내 기계를 어떻게 고치나요 pkg-config?

답변1

그래서 내 솔루션은 특별히 좋지 않습니다. 문제는 Linux Brew를 pkg-config설치했는데(for pyenv) pkg-config내 시스템에서 문제가 해결되었다는 것입니다( apt설치된 버전이 아님).

즉, 정상적으로 설치한 라이브러리( alsa이 경우)는 Linux Brew용으로 설정되지 않았기 때문에 해결되지 않습니다 pkg-config.

달리기

brew uninstall --ignore-dependencies pkg-config

제거했습니다( pyenv아직 불평하지 않았습니다).

PATH더 이상적인 해결책이 필요할 것입니다. 그러나 저는 pkg-config이를 수행하기 위한 조작이나 그 자체에 대해 충분히 알지 못합니다. 더 나은 솔루션이 있는 경우 답변을 작성해 주시면 이 질문에 대한 답변으로 표시하겠습니다.

관련 정보