Anladığım kadarıyla, Apple dağıtılmış bir çalıştırılabilirle aynı çarpışmaya (aynı ada sahip) brewhiçbir şey /usr/local/binkoymuyor. Bu nedenle, sahip /usr/local/binöncesi yolunda /binve /usr/binhiçbir ad çarpışmalar olması gerektiğini, çünkü bir sorun olmamalıdır. * Ancak, sorunlar görüyorum lsve tarve benzeri diğer paket toplayıcılar kullanılarak finkve portyolu aşağıda, (MacPorts).
Brew Ad çarpışmalarını yönetmeye yardımcı olduğunu bildiğim iki şeyden birini yapıyor:
BrewBağlanmamış fıçıları Cellar'da bırakır. Bir şeyler yüklemek için, demlemek bulundukları aletleri bırakır ve içindeki araçlara sembolik bağlantılar oluşturur /usr/local/bin. brewAd çarpışması istemeyen araçlar için sembolik bir bağlantı oluşturmaz.
- İçin birçok da vardır standart tüm araçları değilse
/binve /usr/bin, brewbağlantıyı önek /usr/local/binörneğin bir gerçekleştirme böylece, bir "g" ile lsbir demleme sürümü, kullanımı ile gls. Basitçe bir ls -lgiriş yapın /usr/local/binve bağlantılı dosyaları arayın - bunlar breworada belirtilenlerdir. Not: brewGerçek adlarıyla erişilmesi gereken yüklü araçlar içinde bulunur /usr/local/Cellar/coreutils/8.21/libexec/gnubin.
Ben koymayın /usr/local/biniki nedenden dolayı benim yolunda - o nedenleri cevabım alt kısmındadır.
Sisteminizdeki isim çarpışmalarını değerlendirmek brew doctoriçin bu bölümü kullanın ve arayın - İşte brew doctorilgilendiğiniz çıktı:
Warning: /usr/bin occurs before /usr/local/bin
This means that system-provided programs will be used instead of those
provided by Homebrew. The following tools exist at both paths:
ctags
emacs
emacsclient
etags
ex
git
git-cvsserver
git-receive-pack
git-shell
git-upload-archive
git-upload-pack
rview
rvim
view
vim
vimdiff
vimtutor
xxd
Consider setting your PATH so that /usr/local/bin
occurs before /usr/bin. Here is a one-liner:
echo export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile
Ben koymayın nedeni brew'çünkü ilk ler araçları, aslında, hiç de vardır brewyüklü lsve tarkomutlar, aslında, düzgün son kontrol zamanı (geçen hafta olduğu) dosya sistemi ACL ilgilenmem, onlar değildin' hiç ele alınmadı . Bu BÜYÜK bir sorundur ve ilişkili birlikte tümüyle önlemek için manayarlama ile birlikte etiketleri sayfa yapılandırma sorunu $PATH, ben koymak emin hakkını OSXözellikle de bulunan ilgili araçları, /binve /usr/binilk.
Hiçbir zaman /usr/local/binyoluma koymamamın bir başka nedeni brewde, diğerleri ile iyi oynamaması finkve port(MacPorts) şu anda ŞİMDİ ihtiyacım olan daha çok desteklenen paketlere sahip olmasıdır . Mesela ben alabilirim gnome-terminalile finkancak aynı bir formül oluşturmak için büyük bir çaba ve yapacağını brew. Bu nedenle, araştırmamda ( sırasıyla ve sırasıyla) tutarım /swve hecelenmiş veya dahil olmak üzere ihtiyaç duyduğum şeylere atıfta bulunurum veya kod yazarken tamamen farklı bir ortam için bir dosya kaynaklarım ./opt$PATHfinkport/usr/local/bingnatbash aliassetupAda
Mesele şu ki, o zaman gerçekten ne istediğine ve neye ihtiyacın olduğuna bağlı.
İşte yukarıda bahsettiğim ACL problemine bir örnek.
Standart OSXaletlerle:
$ /bin/ls -le /var/root | head -7
total 24
drwx------+ 3 root wheel 102 May 28 2013 Desktop
0: group:everyone deny delete
1: user:_spotlight inherited allow list,search,readattr,readextattr,readsecurity,file_inherit,directory_inherit
drwx------+ 6 root wheel 204 Sep 19 14:22 Documents
0: group:everyone deny delete
1: user:_spotlight inherited allow list,search,readattr,readextattr,readsecurity,file_inherit,directory_inherit
ve brewyüklü araçlarla:
$ /usr/local/bin/gls -le /var/root
/usr/local/bin/gls: invalid option -- 'e'
Try '/usr/local/bin/gls --help' for more information.
ve
$ /usr/local/bin/gls --help | grep -i acl
Benzer sonuçlar alacaksınız tarve ben evimde pek çok başka brewaraç tanımıyorum , ancak bir ACLsorun nedeniyle 6 ay boyunca bir şeyi kırabilecek kim var ?