Tôi đã từng nghĩ rằng những lo lắng về những gì các công cụ xây dựng Gnu sẽ tạo ra /usr/local
đang tràn ngập trên sự hoang tưởng. Các công cụ xây dựng hy vọng sẽ có rất nhiều thứ ở đó: trong những ngày tốt đẹp trước khi các nhà quản lý gói (tôi nói đùa), chúng tôi đã biên soạn bất cứ thứ gì để làm /usr/local
. Nhưng trong khi Autoconf thường phát hiện ra các vấn đề, thì sự phức tạp trong xây dựng của nhiều dự án nguồn mở gây ra vấn đề và những vấn đề này có thể khó khắc phục khi bạn gặp khó khăn.
Nhưng nguy cơ gặp rắc rối với Autoconf khi tìm thấy thứ gì đó không /usr/local
cần phải cân bằng về sự phiền toái bảo trì có hai, ba hoặc bốn bản sao khác nhau của Perl, Tcl và Ruby, mỗi bản có phạm vi bảo hiểm khác nhau của các thư viện gói khác nhau. Khó chịu.
Vì trải nghiệm của tôi với MacPorts và Fink thường gây ra sự bực tức do chính xác điều này, và tại một số điểm chuyển sang cách biên dịch theo cách cũ /usr/local
, tôi rất vui khi thấy Homebrew không gặp rắc rối với điều đó. Tôi đã thử cấu hình MacPorts để cài đặt /usr/local
, nhưng MacPorts không theo cách đó để gây khó khăn. Tôi hiểu rằng động lực là để làm cho cuộc sống của họ dễ dàng hơn khi xử lý tiếng kêu cứu trong danh sách gửi thư và theo dõi lỗi của họ: tuy nhiên, xin lưu ý rằng mặc dù chúng ta nên tôn trọng nỗ lực của những người đóng gói tình nguyện và coi thời gian của họ là quý giá gỡ lỗi tiện lợi không phải là loại đơn giản duy nhất ảnh hưởng đến bạn, với tư cách là người dùng.
Homebrew, về mặt này ít nhất, thực hiện mọi thứ theo cách họ từng làm và MacPorts cố gắng không can thiệp. Nếu bạn sẵn sàng ghi lại những gói bạn cần với Homebrew và xóa / usr / local và cài đặt lại trong trường hợp gặp khó khăn, thì bạn luôn có thể sao lưu trong trường hợp mọi thứ trở nên tồi tệ. Và một khi bạn nhận ra rằng các vấn đề trong / usr / local thường không có nguy cơ thiệt hại vĩnh viễn cho máy của bạn, bạn có thể cảm thấy tự do hơn khi chấp nhận rủi ro.
Tôi sẽ chỉ lưu ý rằng bao bì trên OSX tệ hơn bao nhiêu so với FreeBSD: Apple dường như không thực sự quan tâm đến khả năng sử dụng của chương trình con BSD của mình, bởi vì đây là vấn đề họ có thể giúp đỡ.