私非常にシンプル少ないBootstrapのみを含むファイル:
/* application.less: The most awesomely complicated file in the whole world. */
@import "bootstrap/bootstrap.less";
私はUbuntu 12.04派生バージョンを使用しており、パッケージlessc
内のコンパイラを試してみましたnode-less
。
$ sudo apt-get install node-less
...done!
$ ( cd /path/of/less/file/ && lessc application.less )
TypeError: Cannot call method 'charAt' of undefined
at getLocation (/usr/lib/nodejs/less/parser.js:204:34)
at new LessError (/usr/lib/nodejs/less/parser.js:213:19)
at Object.toCSS (/usr/lib/nodejs/less/parser.js:379:31)
at /usr/bin/lessc:103:28
at /usr/lib/nodejs/less/parser.js:428:40
at /usr/lib/nodejs/less/parser.js:94:48
at /usr/lib/nodejs/less/index.js:113:15
at /usr/lib/nodejs/less/parser.js:428:40
at /usr/lib/nodejs/less/parser.js:94:48
at /usr/lib/nodejs/less/index.js:113:15
簡単に怖がらないように、Rubyバージョンのlesscを試してみました。
$ sudo apt-get remove --purge node-less
$ sudo gem install less
...done!
[WARNING] Please install gem 'therubyracer' to use Less.
/usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require': no such file to load -- v8 (LoadError)
from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from /var/lib/gems/1.8/gems/less-2.2.2/lib/less/java_script/v8_context.rb:2
from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from /var/lib/gems/1.8/gems/less-2.2.2/lib/less/java_script.rb:9:in `default_context_wrapper'
from /var/lib/gems/1.8/gems/less-2.2.2/lib/less/java_script.rb:17:in `context_wrapper'
from /var/lib/gems/1.8/gems/less-2.2.2/lib/less/loader.rb:10:in `initialize'
from /var/lib/gems/1.8/gems/less-2.2.2/lib/less.rb:14:in `new'
from /var/lib/gems/1.8/gems/less-2.2.2/lib/less.rb:14
from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from /var/lib/gems/1.8/gems/less-2.2.2/bin/lessc:3
from /usr/local/bin/lessc:19:in `load'
from /usr/local/bin/lessc:19
急いで! Rubyは依存関係を管理する方法を知りませんか? !どの。美しい。
$ sudo gem install therubyracer
/usr/bin/ruby1.8 extconf.rb
checking for main() in -lpthread... yes
checking for v8.h... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/bin/ruby1.8
--with-pthreadlib
--without-pthreadlib
--enable-debug
--disable-debug
--with-v8-dir
--without-v8-dir
--with-v8-include
--without-v8-include=${v8-dir}/include
--with-v8-lib
--without-v8-lib=${v8-dir}/lib
/var/lib/gems/1.8/gems/therubyracer-0.11.0/ext/v8/build.rb:42:in `build_with_system_libv8': unable to locate libv8. Please see output for details (RuntimeError)
from extconf.rb:22
The Ruby Racer requires libv8 ~> 3.11.8
to be present on your system in order to compile
and link, but it could not be found.
In order to resolve this, you will either need to manually
install an appropriate libv8 and make sure that this
build process can find it. If you install it into the
standard system path, then it should just be picked up
automatically. Otherwise, you'll have to pass some extra
flags to the build process as a hint.
If you don't want to bother with all that, there is a
rubygem that will do all this for you. You can add
following line to your Gemfile:
gem 'libv8', '~> 3.11.8'
We hope that helps, and we apologize, but now we have
to push the eject button on this install.
thanks,
The Mgmt.
終わりました。お持ちですか?シンプル得る布材私のディストリビューションにインストールされたコンパイラの数が少ないのですか?本当に言うことはできません。
答え1
画面こちら:
$ node --version
v.0.8.16
$ npm --version
1.1.69
$ npm install less
npm http GET https://registry.npmjs.org/less
npm http 200 https://registry.npmjs.org/less
npm http GET https://registry.npmjs.org/less/-/less-1.3.3.tgz
npm http 200 https://registry.npmjs.org/less/-/less-1.3.3.tgz
npm http GET https://registry.npmjs.org/ycssmin
npm http 200 https://registry.npmjs.org/ycssmin
npm http GET https://registry.npmjs.org/ycssmin/-/ycssmin-1.0.1.tgz
npm http 200 https://registry.npmjs.org/ycssmin/-/ycssmin-1.0.1.tgz
[email protected] node_modules/less
└── [email protected]
$ ln --symbolic ~/node_modules/.bin/lessc ~/bin/lessc
$ lessc --version
lessc 1.3.3 (LESS Compiler) [JavaScript]
インストールはうまくいきます。ただし、test.less
ファイルを実行できません(インストールされbootstrap
ていません)。要約すると:なぜ使用しないのですかnpm
?node
どのバージョンをインストールしましたか?
答え2
@Deer Hunterの多くの助けを借りて、私はすぐに製品をインストールして実行できました。
$ sudo apt-get install npm
$ sudo npm install --global less
$ sudo ln -s /usr/local/lib/node_modules/less/bin/lessc /usr/local/bin