如何在 Ubuntu 14.04+ 或 Linux Mint 17+ 上安装 node-sass/gulp-sass?

Édo*_*pez 6 compiling nodejs

我正在尝试从基于C 实现的切换gulp-ruby-sass到比经典 Ruby 版本更快的版本。node-sasslibsass

到目前为止,我已经安装了节点包:

节点包

cd /path/to/project
npm install --save-dev node-sass gulp-sass
Run Code Online (Sandbox Code Playgroud)

吞咽文件

我将要求替换如下:

//sass = require('gulp-ruby-sass'),
sass = require('gulp-sass'),
Run Code Online (Sandbox Code Playgroud)

利萨斯

然后我去找了一个libsass包裹,但目前没有可用的。

所以我想知道是否有人作为 bash 脚本来构建它作为当前指令不清楚?

Édo*_*pez 11

我根据官方文档将我的研究记录为bash 脚本作为要点

编译安装libsass和sassc

安装依赖

apt-get install automake libtool 
Run Code Online (Sandbox Code Playgroud)

获取源

git clone https://github.com/sass/libsass.git
git clone https://github.com/sass/sassc.git libsass/sassc
Run Code Online (Sandbox Code Playgroud)

创建配置脚本

cd libsass
autoreconf --force --install
cd ..
Run Code Online (Sandbox Code Playgroud)

为共享库创建自定义 makefile

有关更多信息,请阅读:静态库和共享库之间的区别?在安装之前libsass。

cd libsass
autoreconf --force --install
./configure \
  --disable-tests \
  --enable-shared \
  --prefix=/usr 
cd ..
Run Code Online (Sandbox Code Playgroud)

建立图书馆

cd libsass
autoreconf --force --install
./configure \
  --disable-tests \
  --enable-shared \
  --prefix=/usr 
cd ..
Run Code Online (Sandbox Code Playgroud)

安装库

make -C libsass -j5
Run Code Online (Sandbox Code Playgroud)

测试

仅有的 node-sass

sudo make -C libsass -j5 install
Run Code Online (Sandbox Code Playgroud)

成功

Rendering Complete, saving .css file...
Wrote CSS to /mnt/data/projects/EVRPA/evrpa/web/main.css
node-sass ../web/styles/main.scss  0.42s user 0.03s system 95% cpu 0.471 total
Run Code Online (Sandbox Code Playgroud)

Gulp 和 ruby-sass

time node-sass /path/to/main.scss 
Run Code Online (Sandbox Code Playgroud)

Gulp 和 node-sass

Rendering Complete, saving .css file...
Wrote CSS to /mnt/data/projects/EVRPA/evrpa/web/main.css
node-sass ../web/styles/main.scss  0.42s user 0.03s system 95% cpu 0.471 total
Run Code Online (Sandbox Code Playgroud)

结论

我的测试是没有基准,并没有什么价值,但node-sass似乎是提升3至5快比ruby-sass。