편집: (해결 후): 그럼, 이것은 pkg 처럼 보입니다 base-devel
. 포함 헤더가 있는 것은 무엇입니까? 이제 잘 작동합니다 :)
감사합니다. (페이스북 리눅스 사용자 그룹에서 도움을 받았습니다.)
현재 Void Linux x86_64 버전 5.4.21_1에 패키지를 설치하고 있는데 "make" 명령에 문제가 있습니다. 패키지 명령을 설치했으며 이제 "make" 명령을 사용한 다음 "make install" 명령을 사용해야 합니다. 패키지 지침에 따라 "make"와 "make install"만 입력하면 컴파일됩니다. "make" 명령을 사용하면 다음 오류가 발생합니다.
누구든지 어떤 제안이 있습니까? 감사해요.
이것은 완전한 오류입니다. GCC를 설치해야 합니다. 저는 makefile이 포함된 디렉터리에서 "make" 명령을 실행하고 있습니다. 이는 st 패키지에만 적용되는 것이 아닙니다. Git 설치 시 이 문제가 발생했습니다. :(
$ git clone https://github.com/LukeSmithxyz/st
$ cd st
$ make
st build options:
CFLAGS = -I/usr/X11R6/include -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/freetype2 -I/usr/include/libpng16 -DVERSION="0.8.2" -D_XOPEN_SOURCE=600 -O1
LDFLAGS = -L/usr/X11R6/lib -lm -lX11 -lutil -lXft -lXrender -lfontconfig -lfreetype -lfreetype
CC = ”/usr/bin/cc”
”/usr/bin/cc” -I/usr/X11R6/include `pkg-config --cflags fontconfig` `pkg-config --cflags freetype2` -DVERSION=\"0.8.2\" -D_XOPEN_SOURCE=600 -O1 -c x.c
/bin/sh: 1: ”/usr/bin/cc”: not found
make: *** [Makefile:22: x.o] Error 127
$ sudo make install
Password:
c99 -I/usr/X11R6/include `pkg-config --cflags fontconfig` `pkg-config --cflags freetype2` -DVERSION=\"0.8.2\" -D_XOPEN_SOURCE=600 -O1 -c x.c
x.c:11:10: fatal error: X11/Xatom.h: No such file or directory
11 | #include <X11/Xatom.h>
| ^~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:22: x.o] Error 1
답변1
문제는 X11 라이브러리에 사용할 수 있는 C 헤더 파일이 없다는 것입니다. Linux에서 헤더 파일은 이러한 라이브러리를 사용하는 프로그램을 실행하는 데 필요하지 않기 때문에 일반적으로 실제 라이브러리와 함께 패키지되지 않습니다. 대신 별도의 패키지로 제공됩니다.
컴파일하려는 소프트웨어는 도구, 라이브러리 fontconfig
및 관련 헤더 파일에 따라 다릅니다. 이는 소프트웨어를 기반으로 한 것입니다.libX11
libXft
README.md
문서.
이 도구는 Void Linux(필요할 수도 있음)에서 패키지 fontconfig
로 제공되며 두 라이브러리는 다음과 같이 제공됩니다.fontconfig
fontconfig-devel
4개packages libX11
, libX11-devel
및 . 헤더 파일 libXft
에 필요한 패키지 libXft-devel
입니다 . -devel
소프트웨어가 컴파일되면 다시 제거될 수 있습니다(적어도 이 특정 작업에 다시 사용되지는 않습니다). 컴파일한 소프트웨어를 실행하려면 추가 패키지가 필요합니다.
cc
(C 컴파일러) 도 설치되어 있지 않은 것 같습니다 . 이 도구(및 소프트웨어 구축을 위한 기타 여러 도구)는 base-devel
Void Linux의 메타패키지에 의해 제공됩니다.
저는 Linux 사용자가 아니기 때문에 이러한 사항을 테스트할 수 없습니다.