Solución:
Tomando la pista @gertvdijk, desinstalé NPM usando el script:
rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/npm*
(que se puede encontrar aquí)
Incluso después de realizar lo anterior, recibí otro error:
$ npm install formidable
bash: /usr/local/bin/npm: No such file or directory
Entonces, corrí hash -r
en la terminal (según las instrucciones que se encuentran en NPM no se ejecutará después de la actualización) y listo, funcionó. ¡NPM ahora funciona!
Ubuntu y algunas distribuciones de Linux instalan el intérprete de nodo como /usr/bin/nodejs
, y no /usr/local/bin/node
.
Puede resolver este problema instalando el nodejs-legacy
paquete que crea un enlace simbólico desde /usr/bin/nodejs
para /usr/bin/node
.
Solución:
sudo apt-get install nodejs-legacy
Referencias: paquete nodejs-legacy
Parece que ha instalado otra versión de Node desde la fuente algún tiempo antes. Esto está indicado por el /usr/local/bin
ruta donde parece estar instalado ahora.
- Desinstale el que instaló desde la fuente. Vea las instrucciones que vienen con la fuente sobre cómo hacerlo. No existe una única forma de desinstalar los scripts de software instalados que no funcionan con la administración de paquetes de su sistema.
- Instale los paquetes con que se enumeran en las instrucciones a las que se vinculó en su pregunta.
- Comprueba eso
which npm
ahora listas/usr/bin
como ruta de instalación.
En general, nunca debería tener que instalar paquetes desde la fuente. Y si lo hace, tenga en cuenta las consecuencias, ya que está anulando la administración de paquetes aquí y se confundirá.