Làm cách nào để cài đặt gói phần mềm trên máy Mac? (MacPorts, Fink, còn gì tốt hơn không?)


40

Trên máy Mac OS X của tôi, bạn muốn giới thiệu tôi cài đặt phần mềm dòng lệnh và các gói khác như thế nào? Tôi đã sử dụng MacPorts và nó luôn có vẻ khá chậm, có lẽ vì nó phải biên dịch các gói khi đang di chuyển.

Tôi rất thích một hệ thống quản lý gói có các gói nhị phân, tiết kiệm cho tôi nhu cầu biên dịch mọi thứ mỗi khi tôi muốn tải xuống một cái gì đó mới. Tôi nghĩ Fink có nhị phân cho một số gói, nhưng tôi thường thấy MacPorts được đề xuất làm hệ thống sử dụng.

Mà bạn nghĩ làm việc tốt hơn và tại sao? (Hoặc có một hệ thống khác mà tôi chưa từng nghe đến?)

Câu trả lời:


26

Tôi đã từng sử dụng Macports vì:

  • Nó thường được cập nhật hơn
  • Macports dường như phổ biến hơn / phổ biến hơn
  • Mọi người khác tôi làm việc đều sử dụng nó

Khi tôi thực hiện nghiên cứu của riêng mình về chủ đề này khi tôi nhận được MBP vào mùa thu năm ngoái, Macports dường như được đề xuất phổ biến nhất cho lý do số 1 ở trên, do đó là lý do số 2 (và có lẽ là lý do số 3).

Biên dịch mọi gói không làm phiền tôi. Nó thường đủ nhanh để nó không can thiệp vào công việc. Nhưng bạn có thể xem xét các nhị phân cổng nếu bạn sẽ sử dụng macports.

Tuy nhiên, tôi đã bỏ sử dụng Macports.

Ngoài ra còn có một công cụ mới trong không gian này được gọi là Homebrew . Tôi đã chuyển từ Macports sang Homebrew vài tuần trước và tôi hài lòng như một cú đấm. Tôi thích:

  • Nó không cài đặt các thư viện trùng lặp - nó sử dụng các lib hiện có của hệ thống.
  • Nó cài đặt trong thư mục nhà của người dùng - không yêu cầu sudo và sao lưu lên TimeMachine.

Homebrew hoạt động trên Leopard hoặc Snow Leopard, mặc dù đôi khi Công thức cần phải được sửa đổi trên Leopard.

Tôi nghĩ rằng tất cả đồng nghiệp của tôi giờ đã chuyển sang Homebrew. Nó cũng đang đạt được lực kéo trong cộng đồng Ruby và Erlang (và có thể là các OSS khác?).


4
re Homebrew không sao chép thư viện - Tôi sẽ đọc khi Macports sử dụng các bản sao của riêng mình trac.macports.org/wiki/FAQ#ownlibs
user151019

Về Homebrew, điều này cũng rất thú vị: superuser.com/questions/118384/ Kẻ
Jonik

Homebrew chỉ là cách tốt hơn để sử dụng MacPorts hoặc Fink đó. Và nếu nó thiếu bất kỳ gói nào bạn cần, thật dễ dàng để đóng góp công thức của riêng bạn để thêm nó. Nghiêm túc, sử dụng Homebrew để bắt đầu - rất có thể bạn sẽ không tìm kiếm bất cứ điều gì khác.
Paul Robinson

13

Bạn không phải chọn giữa hai.

MacPorts cài đặt phần mềm vào / opt / local. Fink cài đặt vào / sw.

Cả hai đều rời khỏi hệ thống căn cứ Darwin, và cả hai có thể cùng tồn tại trong hòa bình.

Các gói nhị phân của Fink rất tuyệt, nhưng chúng không phải lúc nào cũng cập nhật. Tôi có xu hướng sử dụng Fink khi họ có gói cập nhật và tôi xây dựng từ MacPorts nếu họ không.

Một số gói chỉ có trên một hoặc khác, vì vậy thật tiện lợi khi có cả hai sẵn sàng.


2
Nhưng vẫn còn, câu hỏi của tôi vẫn còn. Bạn không cung cấp bất kỳ vần điệu hoặc lý do mà tôi nên sử dụng trong tình huống nào.
Sophie Alpert

1
Tôi đoán bạn đã đăng bình luận này trước khi tôi đăng bản sửa đổi của mình.
Quân đoàn

1
@Ben: Làm thế nào để câu hỏi vẫn còn? Legion đã đưa ra những ưu và nhược điểm của cả hai lựa chọn để bạn có thể đưa ra quyết định giáo dục. Anh ấy phải làm gì khác, quyết định cho bạn?
Josh Hunt

3
Làm thế nào để bạn xử lý phụ thuộc? Nếu gói fink A và MacPorts gói B đều phụ thuộc vào libThing, bạn có kết thúc với hai phiên bản libThing (một từ mỗi trình quản lý gói) không?
dmckee

1
joshhunt: Khi tôi đăng bình luận, chỉ có ba dòng đầu tiên của câu trả lời của anh ấy ở đó; Anh ấy đã thêm hai người kia sau khi tôi bình luận.
Sophie Alpert

4

Fink đảng phái ở đây, bởi vì

  • Các gói quan tâm đến các nhà vật lý hạt (như tôi!) Rất cập nhật
  • Tôi sử dụng debian trên hộp linux của tôi. Dòng finklệnh rất giống aptitudevà tôi đã quen với dpkgnền tảng

4

Nếu bạn chỉ cài đặt một vài chương trình, mọi thứ (fink, macports, homebrew) sẽ ổn.

Nhưng nếu bạn là một người dùng nặng, tôi nghĩ chỉ có macports là phù hợp. Gói của fink là một chút quá cũ. homebrew là một dự án quá trẻ.

Ngoài ra, gần đây tôi đã nghe ai đó sử dụng pkgsrc trên mac os x. Và tôi có thể thử pkgsrc. (Hiện tại tôi đang sử dụng macports và hiện đã cài đặt 418 cổng.)


2
Với "gói Fink là một chút quá cũ", bạn có Fink trung bình là quá cũ, hoặc gói s được cung cấp bởi Fink quá cũ?
Andrew Grimm
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.