이 질문에는 이미 답변이 있습니다.
저는 항상 MacPorts를 사용하여 GCC 컴파일러와 다른 프로그램을 설치하고 유지했습니다. 이제 Fink and Homebrew에 대해 들었습니다. 이 두 유틸리티가 Mac 커뮤니티에서 시작되고있는 것 같지만 그 차이점을 이해하지 못합니다.
MacPorts, Fink 및 Homebrew의 주요 차이점은 무엇입니까? 품질이나 성능에 차이가 있습니까?
이 질문에는 이미 답변이 있습니다.
저는 항상 MacPorts를 사용하여 GCC 컴파일러와 다른 프로그램을 설치하고 유지했습니다. 이제 Fink and Homebrew에 대해 들었습니다. 이 두 유틸리티가 Mac 커뮤니티에서 시작되고있는 것 같지만 그 차이점을 이해하지 못합니다.
MacPorts, Fink 및 Homebrew의 주요 차이점은 무엇입니까? 품질이나 성능에 차이가 있습니까?
답변:
핑크 적어도 2001 핑크 이후 주변왔다 및 MacPorts를가 "직교"할 수있는 시스템에 원하는 패키지 관리자, 그들은 자신의 버전을 설치 python
, perl
위해 자신의 나무 등, 라이브러리, 컴파일러, (/ 자상 Fink (MacPorts의 경우 / opt / local). 그 이유는 애플이 소프트웨어로하는 일을 통제 할 수없고, 때때로 애플이 자신의 물건을 업데이트했을 때 문제를 일으켰 기 때문입니다.
내가 이해 한 바에 따르면, Homebrew는 시스템과 "통합"되고 Apple이 제공하는 라이브러리를 사용하고 그 내용을 /usr/local/bin
다른 표준 폴더 에 설치하려고합니다 . 필자는 소프트웨어 선택이 Homebrew에서 더 제한적이라는 것을 의미합니다. KDE를 설치할 수 있다고 생각할 수는 없지만 시도하지는 않았습니다.
Fink와 MacPorts의 한 가지 포인트 : 몇 년 전 Fink 프로젝트는 바이너리 패키지를 제공했습니다. 즉, 직접 컴파일하지 않고도 패키지를 다운로드하여 설치할 수 있습니다. 패키지 관리자는 여전히 그 기능을 가지고 있으며 오랫동안 사용할 수있는 바이너리가 없었습니다. 그 동안 그 변화가 있었는지 모르겠습니다.
간단히 말해 이진이 없으면 Fink와 MacPorts는 매우 유사합니다. Homebrew보다 더 많은 패키지를 사용할 수있는 반면, Homebrew는 위에서 언급 한 이유로 디스크 공간을 적게 차지합니다. 품질과 관련하여 : Homebrew를 설치 한 적이 없으며 Fink와 MacPorts 사이에서 일반적으로 현재 사용하지 않는 것을 선호합니다.
따라서 MacPorts에 만족한다면 그대로 유지하십시오.
PS Homebrew를 사용해 본 적이없는 이유는 미리 컴파일 된 패키지를 사용하기 때문입니다. 이들은 보통 / usr / local / bin 등에 설치되어 문제를 일으키기 만합니다.
주된 차이점은
섭리, 결과 및 배포 방법입니다.
가장 중요한 세부 사항은 선택한 시스템에 원하는 소프트웨어 패키지가 포함되어 있는지 확인하는 것입니다. 패키지 수는 대략 19k Macports, 22k Fink, 3k Homebrew, 10k pkgsrc입니다.
/opt/local
다른 설치 프로그램 패키지 나 시스템 업그레이드에 영향을받지 않는 패키지를 설치합니다 .dpkg
및 apt-get
업스트림 패키지를 가정 ... 당신이 안정적으로 바이너리 패키지를 찾을 수 있다는되는 주요 이점을 현재 OS 버전의 바이너리가 포함 된 저장소 또한 다윈 사용자 기반에서 나왔지만 데비안 리눅스 (Mac 용 또는 PPC 용)에서 온 사람들에게는 좀 더 안정적인 하드웨어 지원을 원했던 사람들에게 더 인기가있을 것입니다. /sw
다른 설치 관리자가 설치할 수있는 내용을 덮어 쓰거나 덮어 쓰지 않기 위해 패키지를 설치합니다. 또한 컴파일러 검색 경로 및 기본값 PATH
이 /usr/local/bin
이미 포함되어 있습니다./usr/local
나는 그것이 킥 스타트되었고 다른 것보다 최신이라고 생각합니다. 나는 개인적으로 패키지를 거의 필요로하지 않기 때문에이 패키지를 가장 많이 사용한다는 것을 알았고, mac homebrew가 얼마나 잘 지원하는지 확실하지 않습니다. Homebrew는 cpan, gem 등과 같이 밀접하게 연결된 관리자에서 시작된 소프트웨어에보다 적합한 패키지 관리자를 사용하도록 강요합니다./
하지만 패키지를 빌드하고 유지 관리 한다고 생각합니다 /pkg
. 12k와 같은 많은 패키지가있을 수 있으며 약 20 %가 빌드되지 않거나 소스의 최신 버전이 마지막으로 유지 된 패치로 패치되지 않을 수 있습니다. 이진 패키지가 이러한 종류의 시스템을 선호하는 이유입니다.필자는 또한 일종의 홈브류 인 perlbrew 를 사용 했으며perl
, perl에 내장 된 응용 프로그램 및 일부 종속성을 사용했습니다. 여러 버전의 perl을 유지 관리하는 것이 가장 좋은 방법이며,보다 일반적인 다른 패키지 시스템 (그 목적으로)의 필요성을 편리하게 무시합니다. 그러나 물론 cpan 과 cpanminus도 있습니다.
당신은 당신의 자신의 미니 환경과 유사한 관리자 찾을 수 있습니다 (같은 vundle 정력을 위해, 또는 보석 루비를 들어, NPM Node.js를위한 pypm 또는 핍 파이썬를 들어, 이동의 내장 go install
... 등?)
Fink와 MacPorts는 직교 시스템을 설치한다는 점에서 직접적인 경쟁자입니다. Fink는 몇 년 전에 MacPorts에 상당한 기반을 잃었습니다. 지금 왜 그런지 잘 모르겠지만 MacPorts는 거의 모든 것을 더 잘 처리했습니다.
맥 오에스텐이 미친 바지를 자랐기 때문에 직교 설치의 필요성이 줄어들었다. Brew는 Mac OS X과 더 잘 통합되어 가볍고 직교성이 떨어지도록 만들어졌으며 Rubyist가 모든 것을 다시 작성하기 때문입니다.
실제로 MacPorts는 조금 더 복잡하지만 MacPorts는 거의 항상 작동하지만 Brew는 더 단순하지만 벽돌 벽에 부딪 칠 가능성이 높습니다.
자신에게 다음과 같은 질문을하십시오.
대답이 있으면 MacPorts를 선택해야합니다. 비교적 적은 수의 일반적인 패키지를 설치하면 Brew는 오버 헤드가 줄어들지 만 Brew는 복잡성을 처리하지 않습니다. /usr/local
수동 설치를 원할 경우 오염 물질을 추출하십시오 . 실제로, MacPorts에 대한 더 자세한 인수가 있지만 no로 대답하면 다시 적용되지 않을 수 있습니다.
반대로 예라고 대답했지만 기본 컴퓨터가 Linux를 실행하고 Mac이 최소 Linux 소프트웨어를 실행하는 장난감 일 경우 실제로 Brew를 사용하면 더 나을 수 있습니다.
그러나 부수적으로 Apple OS X과 관련된 어떤 것도 / usr / local / bin에 설치되지 않습니다. 그들은 / usr / lib, / usr / bin을 무대 뒤에서 사용하고 프레임 워크는 / Library / Frameworks에 패키지되어 일반 유닉스를 통해 직접 설치하는 것들이 있습니다 ./configure, make, install / usr / local / bin 등 , MacPorts와 같은 유틸리티는 / opt /를 사용하여 개인 ~ / Library / Frameworks /에 프레임 워크를 패키지합니다.
나의 권장 사항은 익숙한 MacPorts를 유지하는 것입니다. 기본적으로 주요 차이점은 MacPorts는 FreeBSD의 포트로 실제 Unix / BSD 포트 트리 구현과 유사한 시스템을 사용하는 반면, Fink는 Linux Debian 아카이브에서 포트 된 응용 프로그램을 사용하고 Linux Debian과 동일한 패키지 관리자 시스템을 사용한다는 것입니다.