Dwm을 Arch Linux로 컴파일합니다. Xft.h가 누락되었나요?

Dwm을 Arch Linux로 컴파일합니다. Xft.h가 누락되었나요?

Arch Linux에서 Dwm Tile Manager(Xorg 사용)를 컴파일하려고 하면 현재 다음 오류가 발생합니다(원본 첨부):

dwm build options:
CFLAGS   = -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os -I/usr/include/X11 -I/usr/include/freetype2 -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=200809L -DVERSION="6.2" -DXINERAMA
LDFLAGS  = -L/usr/lib -lX11 -lXinerama -lfontconfig -lXft
CC       = cc
cc -c -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os -I/usr/include/X11 -I/usr/include/freetype2 -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=200809L -DVERSION=\"6.2\" -DXINERAMA drw.c
drw.c:6:10: fatal error: X11/Xft/Xft.h: No such file or directory
    6 | #include <X11/Xft/Xft.h>
      |          ^~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:18: drw.o] Error 1

Xft.h이는 Dwm을 컴파일하는 데 이 라이브러리가 필요하다는 것을 의미합니까 ?

Arch Linux 패키지 관리자가 Xorg-server(포함됨 Xft.h)를 설치하지 못하여 이 키링 오류(원본 첨부):

resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: harfbuzz will be installed before its freetype2 dependency

Packages (21) freetype2-2.10.2-1  graphite-1:1.3.14-1  harfbuzz-2.7.2-1  libepoxy-1.5.4-2  libevdev-1.9.1-1  libfontenc-1.1.4-3  libgudev-234-1  libinput-1.16.1-1  libpng-1.6.37-3  libwacom-1.5-1  libxfont2-2.0.4-3  libxkbfile-1.1.0-2  mtdev-1.1.6-1  pixman-0.40.0-1  xf86-input-libinput-0.30.0-1  xkeyboard-config-2.30-2  xorg-fonts-encodings-1.0.5-2  xorg-server-common-1.20.9-2  xorg-setxkbmap-1.3.2-2  xorg-xkbcomp-1.4.3-1  xorg-server-1.20.9-2

Total Installed Size:  23.80 MiB

:: Proceed with installation? [Y/n] checking keyring...
downloading required keys...
:: Import PGP key 3B94A80E50A477C7, "Jan Alexander Steffens (heftig) <[email protected]>"? [Y/n] error: key "3B94A80E50A477C7" could not be looked up remotely
error: required key missing from keyring
error: failed to commit transaction (unexpected error)
Errors occurred, no packages were upgraded.

그것을 얻을 수 있는 다른 방법이 있나요 Xft.h?

답변1

예, 컴파일러는 X11/Xft/Xft.h시스템의 포함 디렉터리에서 찾을 수 없다고 불평합니다.

팩맨의 파일 데이터베이스를 쿼리하여 어떤 패키지(제거된 패키지 포함)가 파일을 제공하는지 알아낼 수 있습니다.

sudo pacman -Fy    # the database likely needs to be refreshed
pacman -F Xft.h

pkgfile또는 자체 파일 데이터베이스를 유지 관리하는 보다 풍부한 기능을 갖춘 소프트웨어를 설치하는 경우 :

pkgfile Xft.h

usr/include/X11/Xft/Xft.h둘 다 이것이 에서 제공된다는 것을 알려줄 것입니다 libxft.

기존 패키지를 활용할 수도 있습니다.dwm AUR에 있음PKGBUILD그리고 자신의 버전을 컴파일해야 하는 경우에도 여기에 제공된 파일("dependents", "makedependents")에 선언된 종속성을 계속 볼 수 있습니다 .

문제 보고[이메일 보호됨]gpg 키는 지난 몇 달 동안 Arch Linux 포럼에 두 번 이상 나타났습니다.[1] [2]. archlinux-keyring패키지가 최신 상태이고 누락된 키와 관련된 오류가 계속 표시되는 경우 3B94A80E50A477C7다음의 하위 키인 키를 가져와 볼 수 있습니다.

sudo gpg --recv-keys --keyserver hkp://pool.sks-keyservers.net \
  --homedir /etc/pacman.d/gnupg 19802F8B0D70FC30

관련 정보