在IBM i上安装node-sass(以前称为iSeries / AS / 400)

有没有人能够在IBM i上成功安装node-sass?

我目前正在运行Node 6.9.1,并且能够安装许多npm包。 但是,@ angular / cli依赖于node-sass,显然,node-sass有一个编译好的组件,这让我很难安装。

我的第一个问题是能够下载二进制本身 – 因为我们的networking设置,IBM我无法下载二进制文件:

https://github.com/sass/node-sass/releases/download/v4.5.2/aix-ppc-48_binding.node

我得到一个超时错误。 我能够通过将SASS_BINARY_SITE更改为非https版本来解决此问题:

export SASS_BINARY_SITE='http://github.com/sass/node-sass/releases/download' 

但是,现在,即使二进制文件成功下载,当npm尝试testing二进制文件时,出现以下错误:

testing二进制二进制文件有一个问题:错误:无法加载模块/QOpenSys/QIBM/ProdData/OPS/Node6/lib/node_modules/node-sass/vendor/aix-ppc-48/binding.node。 该模块有一个无效的幻数。

 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) 

然后npm尝试在本地构build二进制文件,但因为Python2在这台机器上不可用而失败。 我可以请求安装Python2,这在我们的环境中是一个漫长的过程,但是在我继续下去这个兔子洞之前,我想知道是否真的有可能让node-sass工作,如果有的话,还有另一个二进制,我可以指向npm install在使用。

或者,有没有其他方法来获得节点sass的工作?

截至2017年,这可能是不可能的。 除了Python之外,还需要整个cpp工具链来构build节点和节点插件。 由于这已经是台式电脑的一个非常困难的要求,像这样的系统将有更难的时间。 从binding.gyp来看,只支持OS X,Windows和Linux。

众所周知,node-sass很难在节点使用基础上构build。

很可能你希望在Linux上有一个构build/ CI步骤来编译你的SASS文件并构build你的制造。