패키지를 설치하고 싶습니다! [폐쇄]

패키지를 설치하고 싶습니다! [폐쇄]

패키지를 설치하려고 몇 시간을 보냈는데 성공하지 못했습니다. Linux 환경에서 이런 일이 가끔 발생하는 것 같습니다.

배경: 내가 설치하려는 패키지는 1) .debx64 대신 x86용 패키지, 2) a .Run, 3) 소스 코드, 4) OSX 설치 프로그램으로 제공됩니다. OSX 설치 프로그램이 제대로 작동합니다. Debian 7을 새로 설치하면서 소스에서 컴파일을 시도했습니다 .deb. .Run이 세 사람은 나에게 일련의 어려움을 안겨주었다. 기본적인 문제는 이러한 채널을 통해 Debian 7이 너무 오래 LibC되고 너무 오래된 버전을 제공한다는 것입니다 Ocaml. 대부분의 시간은 종속성을 해결하기 위해 apt-get 명령 다음에 apt-get 명령을 실행하는 데 소비됩니다.

질문: 프로세스를 최대한 자동화하여 소프트웨어 패키지 설치를 단순화하는 데 사용할 수 있는 도구는 무엇입니까? 소스에서 빌드된 모든 패키지는 어떤 버전의 어떤 종속성이 필요한지 명확하게 알 수 있습니다. 그렇죠? 그렇다면 모든 종속성을 자동으로 해결할 수 없는 이유는 무엇입니까?

내 시스템에 있는 다른 패키지의 버전을 수정하지 않고도 자체적인 작은 환경에서 실행할 수 있도록 내 패키지에 필요한 모든 종속성의 복사본을 포함하는 디렉터리를 내 시스템에 만들면 좋을 것입니다. 가능합니다. "Foo, 버전 4.2.3이라는 패키지를 주세요"라고 말할 수 있는 방법이 분명 있을 것입니다. 그러면 다른 모든 작업이 자동으로 완료됩니다.

답변1

경험은 거의 동일합니다. 문제는 데비안(안정적)이 최첨단 배포판이 아니라는 것입니다.안정적인. 이는 저장소에 이전 버전의 패키지가 있다는 의미입니다(그런데 패키지 이름을 언급하는 것이 좋을 수도 있습니다). .libc

.deb실행 중인 데비안 버전에 맞게 패키지된 패키지를 설치하는 것은 간단하고 어렵지 않습니다. 저를 믿으십시오. 과거에는 대부분의 항목을 소스에서 설치해야 했습니다. aptitude install foo.4.2.3.deb당신 이 실행할 때"Foo 버전 4.2.3이라는 패키지를 주세요"라고 말하면 다른 모든 작업이 완료됩니다. 이전 버전을 사용하고 있기 때문에 저장소에 없는 경우 이는 패키지 관리자의 잘못이 아닙니다.

따라서 새로운 질문을 게시하고 얻으려는 특정 패키지를 설치하는 방법을 묻는 것이 좋습니다. 최신 버전이 필요한 경우 libc전체 시스템을 저장소 로 testing또는 저장소에서 업그레이드하는 것이 더 쉬울 수 있습니다. experimentallibc를 업그레이드하는 것도 가능하지만 이는 간단하지도, 간단하지도 않습니다.여기.

또한 이것이라는 것을 알아야합니다.아니요작은 문제입니다. 패키지 관리자는 종속성을 잘 관리하지만 충돌이 발생할 수 있습니다. 특히 libc.

이 명령은 종속성을 인쇄합니다 libc.

apt-cache rdepends libc6

내 Debian의 목록에는 16056개의 다양한 패키지가 포함되어 있습니다. 패키지가 foo최신 버전에 의존하기 때문에 libc를 업그레이드하는 경우 패키지 관리자는 패키지가 이미 설치된 버전에 의존한다는 사실을 어떻게 처리해야 합니까? 새 버전과도 호환되는지 어떻게 알 수 있나요?

답변2

나는 여기서 당신의 기대가 틀렸다고 생각한다고 말하고 싶습니다.

이러한 솔루션은 완전히 다른 두 가지 청중을 대상으로 합니다. Apple은 사용 가능한 소프트웨어를 엄격하게 제어하며 이는 앱의 작은 하위 집합일 뿐입니다.

나는 더 많은 사람들을 도왔고 그들이 OSX를 사용하고 있으며 오픈 소스 프로젝트 "X"를 설치하고 싶어하지만 OSX에서 잘못된 버전의 Xcode를 사용하여 동일한 유형의 문제를 겪고 있거나 공식 버전을 사용하고 있음을 인정합니다. Subversion을 사용하려면 MacPorts 또는 HomeBrew에서 설치된 버전이 필요합니다. 이 패키지 "X"를 설치하기 전에는 다른 라이브러리 및 종속성과 싸우는 것이 실제로 아무런 차이가 없었습니다.

종속성을 디렉터리에 넣고 응용 프로그램 "X"를 설치할 수 있는 마법 도구는 본 적이 없습니다. 그것은 단순히 존재하지 않으며 결코 존재하지 않을 것입니다. 종속성 관리와 패키지 관리를 더 좋게 만들기 위한 많은 시도가 있었지만 해결해야 할 매우 복잡한 문제일 뿐입니다.

Apt, Yum 등은 모두 잘 해내지만, 문제는 제약 없는 문제를 해결하려고 하는데, 이는 종종 불가능하다는 것입니다. "대부분의" 상황에 작동하는 솔루션 유형의 80%만 얻을 수 있습니다.

그렇게 간단합니다.

관련 정보