저는 최근 Linux에 대해 최대한 많은 것을 배우기 위해 다양한 Linux 배포판을 사용해 보았습니다. 최근 LFS를 설치할 때 Linux의 핵심 요소를 이해하려고 노력하다가 소스에서 패키지를 설치하는 데 문제가 발생했습니다. 소스에서 일부 패키지를 설치했지만 프로세스에 대한 표준이 없습니다. 예, 일반적인 접근 방식은 먼저 구성한 다음 만들고, 그 다음 설치하는 것입니다. 그러나 이는 패키지마다 많이 다릅니다. 그리고 설치하려는 패키지를 처리할 방법을 찾지 못했습니다.
예를 들어 dpkg 패키지 관리자를 설치하려고 하는데 libselinux1을 제외한 모든 종속성이 성공적으로 설치되었습니다. 타르볼 압축을 풀어보니 폴더에 구성 파일이 없어서 make 단계를 먼저 하고 구성을 건너뛰면 어떨까 하는 생각이 들었습니다. 폴더 안의 Makefile을 읽었는데 전혀 모르겠습니다. 작동하지 않고 오류가 발생합니다.
Fatal Error: sepol/sepol.h: No such file or directory
15 | #include <sepol/sepol.h>
내 질문은 패키지 관리자를 사용하지 않고 소스에서 패키지를 설치하는 방법을 어떻게 알 수 있습니까? 더 구체적으로 말하면 이 패키지를 어떻게 설치합니까?
도와주셔서 감사합니다!
답변1
내 질문은 패키지 관리자를 사용하지 않고 소스에서 패키지를 설치하는 방법을 어떻게 알 수 있습니까?
소스코드 컴파일에 대한 표준은 없습니다. 다양한 패키지 에서 Makefile
, cmake
, autotools
일반 bash 스크립트를 사용할 수 meson
있으며waf
많은 다른 사람.
더 구체적으로 말하면 이 패키지를 어떻게 설치합니까?
방법을 확인하실 수 있습니다
- Arch가 구축한 것:https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=libselinux
- 페도라 모자https://src.fedoraproject.org/rpms/libselinux/blob/master/f/libselinux.spec또는
- 더반http://deb.debian.org/debian/pool/main/a/android-platform-external-libselinux/android-platform-external-libselinux_8.1.0+r23-2.debian.tar.xz
- 심지어 젠투https://gitweb.gentoo.org/repo/gentoo.git/tree/sys-libs/libselinux/libselinux-3.1.ebuild