"구성: 오류: 패키지 요구 사항(blkid)이 충족되지 않았습니다."

"구성: 오류: 패키지 요구 사항(blkid)이 충족되지 않았습니다."

소스에서 btrfs-progs를 빌드하려고 하는데 ./configure를 실행하면 오류가 발생합니다.

checking for BLKID... no
configure: error: Package requirements (blkid) were not met:

No package 'blkid' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables BLKID_CFLAGS
and BLKID_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

blkid/sbin따라서 아마도 모든 라이브러리가 기본 위치에 설치되어 있을 것입니다.

blkidpkg-config에 현재 위치 또는 실제로 패키지가 누락된 위치를 알리려면 어떻게 해야 합니까 ?

참고: 저는 약 일주일 전에 github.com/torvalds/linux.git에서 빌드된 4.1.0 커널로 Debian 8(sid/unstable)을 실행하고 있습니다(커밋: g6aaf0da).

답변1

패키지가 누락된 경우 다음을 사용할 수 있습니다 apt-cache.

% apt-cache search blkid
libblkid-dev - block device id library - headers and static libraries
libblkid1 - block device id library

심지어:

% apt-cache search blkid | grep '\-dev'
libblkid-dev - block device id library - headers and static libraries

우리는 무언가를 컴파일하려면 개발 라이브러리가 필요하다는 것을 알고 있습니다.

apt-get install libblkid-dev

... root사용자로서.

답변2

특정 라이브러리에 연결되는 소스 코드에서 바이너리를 빌드하는 경우 빌드 프로세스에는 런타임에 필요하지 않은 해당 라이브러리와 관련된 일부 추가("헤더") 파일이 필요하므로 기본 파일과 함께 라이브러리를 설치하지 않습니다. 패키지(라이브러리 자체가 필요한 다른 배포 패키지가 이미 바이너리를 구축했기 때문입니다).

Debian에서는 추가 파일이 -dev패키지에 있습니다. 실제 라이브러리는 이므로 다음이 libblkid필요합니다.

apt-get install libblkid-dev

답변3

달리기

apt-get build-dep btrfs-tools

를 포함한 모든 빌드 종속성을 가져옵니다 libblkid-dev.

답변4

Arch-distros의 솔루션:

sudo pacman -S util-linux libutil-linux

관련 정보