Acabo de actualizar mi MacBook Air a Mavericks. El proceso parece haber eliminado casi todos los enlaces simbólicos que se homebrew
introdujeron /usr/local/bin
. Cuando noto que faltan cosas, las vuelvo a vincular brew unlink <keg> && brew link <keg>
(aunque los enlaces simbólicos desaparecieron, homebrew
todavía creo que están allí, así que unlink
primero tengo que hacerlo ). Esto se siente algo ineficiente.
Simplemente podría recorrer todo /usr/local/Cellar
pero no todos los barriles están vinculados automáticamente y no quiero vincularlos. Entonces, mi siguiente suposición es enumerar cada barril vinculado y volver a vincularlos (usando lo anterior).
¿Hay algún comando mágico que encuentre todos los barriles que homebrew
cree que están vinculados para que pueda volver a vincularlos?
Respuestas:
/usr/local/Library/LinkedKegs
parece contener una lista de, bueno, barriles vinculados, por lo que esto debería hacer el truco:Recomiendo asegurarse de que tiene permisos de escritura
/usr/local/lib
nuevamente antes de intentar esto.fuente
--force
!brew link
debería ser suficiente, y algunos barriles realmente no deberían estar vinculados (ya que pueden entrar en conflicto con las bibliotecas del sistema), mientras--force
que forzarán su vinculación./usr/local/Library
.Este comando bash (tomado de allí ) desenlazará todas las fórmulas instaladas y luego las vinculará nuevamente:
Supongo que todas las fórmulas deben estar vinculadas, de lo contrario, cualquier herramienta que dependa de ellas, no podrá encontrarlas.
fuente
brew list -1 | xargs -I formula sh -c "brew unlink formula && brew link formula"
Además de las otras respuestas a esta pregunta, es posible que deba volver a vincular la fórmula con varias versiones instaladas (
brew link
no lo hará por usted).Primero, vuelva a vincular todas las fórmulas que pueda:
Luego corre
brew doctor
, que debería quejarse y darte dos listas:Para cada fórmula con múltiples versiones, ejecute lo siguiente, reemplazando "python" con el nombre de la fórmula:
Esto le mostrará, entre otra información, todas las versiones instaladas. Elija qué versión desea vincular (para mí es 2.7.6) y use
brew switch
También querrá ejecutar
brew unlink
en la lista (si la hay) de fórmulas solo de barril que se han vinculado.fuente