소스에서 패키지 를 빌드하려면 apt-get source --compile pkg-name
.apt-get build-dep pkg-name
업데이트된 모든 패키지가 소스에서 사전 컴파일되는 지점에 도달할 수 있습니까?
답변1
가능하지만 매우 어렵습니다. 소스에서 모든 것을 다시 빌드하려는 경우 중단해야 하는 종속성 사이클에 빠지게 됩니다. 그러나 인내심을 갖고 싶다면 apt-get build-dep
각 소스 패키지 내부를 살펴보고 를 debian/control
사용하는 대신 및 에 나열된 모든 패키지를 다시 빌드해야 합니다. 이상적으로는 모든 "기본" 패키지와 모든 종속 패키지도 다시 빌드해야 합니다(패키지는 이러한 패키지에 대한 종속성을 선언할 필요가 없습니다).Build-Depends
Build-Depends-Indep
build-essential
다른 사람들이 이에 대해 작업했습니다(그리고 지금도 그렇습니다). 데비안을 부트스트랩하려는 지속적인 노력에 대해 읽을 수 있습니다.데비안 위키.
~처럼미역취 속의 일종그러나 이것은 시간 낭비라는 점을 지적하십시오. 실제로 데비안에는 이 작업을 하는 사람들이 있습니다.완전히바이너리 패키지가 재현 가능하다는 것을 보장하는 것은 의미가 없습니다.즉아카이브에 있는 것과 동일한 바이너리를 얻기 위해 자신의 컴퓨터에서 다시 빌드하여 선언된 소스 코드가 실제로 바이너리를 빌드하는 데 사용되었음을 증명할 수 있습니다. 따라서 소스 코드나 빌드 구성을 변경하려는 경우가 아니면 할 수 없습니다. 자신의 컴퓨터에서 소스를 다시 작성해야 합니다. 이 작업에 대한 내용은 다음에서 읽을 수 있습니다.데비안 위키그리고 파일의 80% 이상이 이미 복제 가능합니다.
이것을 학습 연습으로 사용하고 싶다면발아좋은 조언: 한번 살펴보세요처음부터 리눅스대신에. 또한 소스 지향적인 배포판(예: 로컬 소스에서 컴파일된 배포판)을 볼 수도 있습니다.젠투 리눅스.