Mac OS'de Unix paketleri için resmi yükleyici nedir?


10

Mac OS X'te standart Unix paketlerinin yüklenmesi konusunda biraz kafam karıştı. Örneğin, SVN v.1.4.4 olan / usr / bin / svn var, ancak FinkCommander svn'ın yüklü olmadığını söylüyor. Aynı şey emacs gibi diğer paketler için de geçerlidir.

Bu sadece yanlış bir FinkCommander ayarı mı? Şu anda /sw, içinde bile olmayan her şeyi yüklemek için ayarlanmıştır PATH. Yani, sadece paketleri yüklemek için ayarlamam gerekiyor /usrmu ve yüklü yazılımı tanıyacak mı? Her şeyin yinelenen paketlerini kurmak istemiyorum ve FinkCommander'ın yüklü yazılımla senkronize olmadığı anlaşılıyor.

Yoksa kullanmam gereken başka bir yükleyici var mı? Mac Ports kullanılması önerilen yükleyici midir?

(Mac OS 10.5.8 kullanıyorum.)


Güzel soru ve bazı harika cevaplar. Ayrıca bunu kontrol edin: superuser.com/questions/28529/macports-fink-etc
Jonik

MacPorts'a gelince: Her paketi sıfırdan derlemek çılgınca. Kendimi şimdi MacPorts (ilk gcc43, perl, automake, glib2 ve daha fazlasını derleyen ...
dehmann

Önceden oluşturulmuş ikili paketler istiyorsanız Rudix'e göz atın .
Telemachus

Yanıtlar:


10

OS X için resmi bir paket yöneticisi yok.

Fink , MacPorts ve Homebrew , bu boşluğu doldurmak için kendi farklı özelliklerini ve işlevlerini sağlar.

Birçok kullanıcının belirttiği gibi:

  • / usr kullanmaktan kaçının
  • PATH'inizi yapılandırıncaya kadar farklı dizinlerden paketler bulunmaz.

Cevap için teşekkürler. Bu oldukça hayal kırıklığı yaratıyor. Neden uygun bir paket yöneticisi sunmuyorlar? :-(
dehmann

5
Hedef kitleleri ne yapacaklarını bilemezlerdi. Geri kalanımız bu işi yapıyor :-)
Jeremy L

Kabul edilen cevap olarak seçiyorum, ancak aslında birden fazla yönetici kullanmanın iyi olduğunu ekliyorum. En azından Fink ve MacPorts birlikte var olabilir, çünkü farklı dizinlere kurulurlar.
dehmann

7

Mac OS X için resmi bir Unix / FOSS paket yöneticisi olmasa da, MacPorts'un oluşturulduğunu ve hala esas olarak Apple'ın Mac OS X / Darwin mühendisleri tarafından korunduğunu belirtmek gerekir. Macports.org web sitesi, Apple'ın "MacOSForge.com" projesinin bir parçası olarak Apple'ın sunucularında barındırılmaktadır. Mac OS X / Darwin * BSD tabanlı olduğundan, Apple'ın Unix katmanı yazılım mühendislerinin çoğu * BSD geleneklerinden gelir, bu nedenle MacPorts'u * BSD "bağlantı noktaları" modelinden sonra modellenmiştir.

Fink, Mac OS X için orijinal açık kaynak paket yöneticisiydi, ancak Apple ile yakın örgütsel bağları yok ve Debian Linux apt-get geleneğini izlemeyi seçti.

Yukarıdaki detaylardan birinin diğerini tavsiye etmek için yeterli olduğundan emin değilim. Zaten hangi modele aşina olduğunuzu söyleyebilirim. Apt-get'i daha iyi biliyorsanız, Fink ile devam edin. BSD "bağlantı noktaları" nı daha iyi biliyorsanız, MacPorts'u kullanın.

Diğerlerinin söylediği gibi, Mac OS X'in varsayılan Unix araçlarını tek başına bırakmanız en iyisidir. Fink ve MacPorts bu dersi zaten öğrendiler ve kendi kopyalarını kendi dizin hiyerarşilerinde kurdular (Fink için / sw, / MacPorts için opt). Homebrew henüz bu dersi tam olarak öğrenmedi, ancak bazı kullanıcılar Homebrew'u Perl veya Python'un yerleşik kopyasını güncellemek için kullandıkları anda ve Mac'in yerleşik parçalarını kıran beklenmedik uyumluluk sorununa sahip olacaklar. Bazı kurulum görevlerini gerçekleştirmek için Perl komut dosyalarını kullanan yükleyici paketleri (Mac OS X .pkg paket dosyaları) gibi OS X.


5
Anladığım kadarıyla, Homebrew / usr / local / altına kurulur ve bu nedenle Python sisteminin üzerine asla yazılmaz.
Pepijn

4
Mevcut bileşenlerinizin üzerine yazmak için Homebrew kullanmak imkansızdır. OSX varsayılan olarak / usr / local ile gönderilir.
Paul Robinson

5

OS X için resmi paket yöneticisi yoktur .

Fink muhtemelen Fink yolunda yüklü olmadığı için kurulu olmadığını söylüyor. Fink veya MacPorts'tan bir şey yüklerken veya farklı sürüm numaralarına sahip kopyaları kopyalarken sorunlarla karşılaştım.

Birini seçip ona bağlı kalın. Değiştirmeniz gerektiğini düşünüyorsanız, diğer paket yöneticisini silmek ve yenisinden yeniden yüklemek en iyisidir.


3

Gördüğünüz svn sürümü, Mac OS X ile geldi - Fink veya başka bir kaynaktan değil.

Bash typekomutunu kullanarak farklı sürümleri tanımlayabilirsiniz . Örneğin, MacPorts kullanıyorum ve sqlite3'ün daha yeni bir sürümünü yükledim:

$ type -a sqlite3
sqlite3 is /opt/local/bin/sqlite3
sqlite3 is /usr/bin/sqlite3

/ Opt / local / bin içindeki sürüm MacPorts'tan, / usr / bin içindeki sürüm Mac OS X ile geldi.

/ Usr - Fink veya MacPorts ikili dosyalarını kurmamanızı tavsiye ederim - bunları yalnız bırakın. Fink'in / sw'ye veya MacPorts'un / opt / local'a kurulmasına izin verin. Şu Verilerinizi ayarlayın PATHFink / MacPorts standart versiyonları önce sürümlerini bulmak için


Benzer bayrakları kullanarak kullanabilirsinizwhich -a sqlite3
Jeremy L

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.