"brew link node" crea / elimina un número diferente de enlaces simbólicos cuando se repite

1

Estaba actualizando Node.js node a través de Homebrew's brew upgrade , y no se vinculó correctamente.

  

$ brew update
(las fórmulas snip-snip se actualizaron)
  $ brew upgrade
(snip-snip otras actualizaciones)
  == > Actualizando nodo
  == > Descargando enlace

     ################################################## ################ 100.0%      

== > ./configure --prefix = / usr / local / Cellar / node / 0.8.11
  == > hacer instalar
  == > Advertencias
  Homebrew instalado npm.
  Recomendamos agregar la siguiente ruta a su entorno PATH
  variable para tener binarios instalados npm recogidos:
    / usr / local / share / npm / bin
  Advertencia: No se pudo enlazar el nodo. Desvinculando ...
  Error: el paso brew link no se completó correctamente
  La fórmula se construyó, pero no está enlazada en / usr / local
  Puedes volver a intentarlo usando 'brew link node'
  == > Resumen
  /usr/local/Cellar/node/0.8.11: 856 archivos, 13M, construido en 108 segundos
(snip-snip otras actualizaciones)

Seguí los pasos recomendados para forzar el enlace.

  

$ nodo de enlace de elaboración
  Enlace de / usr / local / Cellar / node / 0 ... Advertencia: No se pudo enlazar el nodo. Desvinculando ...

     

Error: No se pudo el archivo de enlace simbólico: /usr/local/Cellar/node/0.8.11/lib/node_modules/npm/scripts/relocate.sh
  El objetivo /usr/local/lib/node_modules/npm/scripts/relocate.sh ya existe. Es posible que necesite eliminarlo.
  Para forzar el enlace y eliminar este archivo, haz:
    enlace de elaboración -f formula_name

     

Para enumerar todos los archivos que se eliminarían:
    enlace de elaboración -n formula_name
  $ brew link -f node
  Enlace de /usr/local/Cellar/node/0.8.11 ... 756 enlaces simbólicos creados

Me sorprendió la cantidad de enlaces simbólicos, así que por curiosidad intenté volver a vincularlo.

  

$ crear nodo de desvinculación
  Desenlazando /usr/local/Cellar/node/0.8.11 ... 755 enlaces eliminados
  $ nodo de enlace de elaboración
  Enlace de /usr/local/Cellar/node/0.8.11 ... 352 enlaces simbólicos creados
  $ nodo de enlace de elaboración
  Advertencia: Ya vinculado: /usr/local/Cellar/node/0.8.11
  $ qué nodo
  / usr / local / bin / node
  $ crear nodo de desvinculación
  Desenlazar /usr/local/Cellar/node/0.8.11 ... 351 enlaces eliminados
  $ nodo de enlace de elaboración
  Enlace de /usr/local/Cellar/node/0.8.11 ... 304 enlaces simbólicos creados
  $ crear nodo de desvinculación
  Desenlazando /usr/local/Cellar/node/0.8.11 ... 303 enlaces eliminados
  $ nodo de enlace de elaboración
  Enlace de /usr/local/Cellar/node/0.8.11 ... 304 enlaces simbólicos creados
  $ crear nodo de desvinculación
  Desenlazar /usr/local/Cellar/node/0.8.11 ... 303 enlaces eliminados

El proceso se estabiliza en 304/303.

  1. ¿Por qué tantos enlaces simbólicos?
  2. ¿Por qué el número de enlace / desvinculación cambia de 756 a 303?

Editar: ejecutó el mismo procedimiento de actualización / actualización / enlace / desvinculación en la computadora de un colega; en este caso, los enlaces simbólicos pasaron de 775 a 318 a 226, donde se estabilizaron. ¿Alguien más tiene números similares? ¿Dependen de otras recetas de preparación instaladas, o tal vez de módulos npm?

    
pregunta Joel Purra 29.09.2012 - 17:34

1 respuesta

5

¿Tiene varias versiones de Node instaladas a través de homebrew? Cada vez que se actualiza el nodo homebrew coloca la versión más reciente junto con la anterior y luego actualiza los enlaces simbólicos a la versión más reciente. Ejecutar brew cleanup debería reducir eso un poco para ti.

    
respondido por el rchrdg 29.09.2012 - 22:12

Lea otras preguntas en las etiquetas