¿Alguien ha podido instalar con éxito node-sass en IBM i?
Actualmente estoy ejecutando Node 6.9.1 y puedo instalar muchos paquetes npm. Sin embargo, @angular/cli depende de node-sass, y aparentemente, node-sass tiene un componente compilado que me está dando problemas para instalar.
Mi primer problema tenía que ver con poder descargar el binario en sí; debido a la configuración de nuestra red, el IBM i no pudo descargar el binario desde:
https://github.com/sass/node-sass/releases/download/v4.5.2/aix-ppc-48_binding.node
Estaba recibiendo un error de tiempo de espera. Pude resolver eso cambiando SASS_BINARY_SITE a la versión que no es https:
export SASS_BINARY_SITE='http://github.com/sass/node-sass/releases/download'Sin embargo, ahora, aunque el binario se descarga correctamente, aparece el siguiente error cuando npm intenta probar el binario:
Probar binario Binario tiene un problema: Error: no se pudo cargar el módulo /QOpenSys/QIBM/ProdData/OPS/Node6/lib/node_modules/node-sass/vendor/aix-ppc-48/binding.node. El módulo tiene un número mágico no válido.
at Error (native) at Object.Module._extensions..node (module.js:597:18) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) at Module.require (module.js:497:17) at require (internal/module.js:20:19) at module.exports (/QOpenSys/QIBM/ProdData/OPS/Node6/lib/node_modules/node-sass/lib/binding.js:19:10) at Object.<anonymous> (/QOpenSys/QIBM/ProdData/OPS/Node6/lib/node_modules/node-sass/lib/index.js:14:35)
Y luego npm intenta construir el binario localmente, pero falla porque Python2 no está disponible en esta máquina. Puedo solicitar la instalación de Python2, que es un proceso largo en nuestro entorno, pero antes de continuar por esa madriguera de conejo, me gustaría saber si es posible que node-sass funcione y, de ser así, ¿hay otro? binario al que puedo apuntar la npm install para usar en su lugar.
O, ¿existe un medio alternativo para hacer que node-sass funcione?
A partir de 2017, es probable que esto no sea posible. Además de Python, necesitará toda la cadena de herramientas de cpp para crear nodos y complementos de nodos. Dado que este ya es un requisito muy difícil para las PC de escritorio, los sistemas como ese lo tendrán aún más difícil. A juzgar por su binding.gyp , solo hay soporte para OS X, Windows y Linux.
Se sabe que node-sass es difícil de construir también en la base de uso de nodos.
Es muy probable que prefiera tener un paso de construcción/CI en Linux que compile sus archivos SASS y construya su artefacto.