LESSのインストールでハマった点まとめ

Less & Sass Advent calendar 2011の19日目です。
流れを全力でぶった切るようですが、今回はnodeなどの話が主になってしまいました。

LESSをインストールした時にかなりハマったので、その過程を書いて、LESSを使えるようにするためにどうしたのかを書いていきます。
なお、OSはCentOS v5.7となります。

環境

今回いろいろインストールをしたことにより、手に入れた環境は以下の通りとなります。

  • LESS v1.1.6
  • node v0.6.6
  • nvm
  • npm v1.1.0-beta-4
  • Python v2.7.2

nodeインストール

LESSはnodeが使われているため、まずはnodeのインストールから始めます。
まず、あるサイトを参考に、nodeのリポジトリをgit cloneし、./configureしたのですが、なぜかエラーがでて止まります。

原因を調べてみると、Pythonのバージョンが古いという情報にたどり着いたので、python -Vで確認してみると、確かにPython2.4系列とバージョンが古い。
そこで下記サイトを参考に、Pythonバージョン2系列で一番最新の2.7.2をインストールしました。
さくらVPSで、node0.5.3~npmのinstallではまった – motsatのブログ

wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz
tar xzvf Python-2.7.2.tgz
cd Python-2.7.2
./configure
make
sudo make install

そして、nodeのインストールを、./configure→make→sudo make installで完了させました。
しかし、インストールしてみたnodeのバージョンを見てみると、なんだか古いような気がしてならない。

node -v
v0.5.10-pre

バージョンを調べてみたら、stableが0.6.6でpreviewが0.5.10となっていました……
何が原因かと思い検索をしてみたら、参考にしたサイトではURLがgit://github.com/ry/node.gitとなっていたのですが、git://github.com/joyent/node.gitのほうが新しく、それが原因でバージョン的には古いプレビュー版がインストールされてしまったようです。

なので改めて、git://github.com/joyent/node.gitをgit cloneしてmakeしようとしたのですが、openssl周りでエラーがでてしまい、面倒になったので、nodeのバージョン管理システムであるnvmを使うことにしました。

nvmインストール

Node.jsとnvmを初めてインストールするときのハマりポイントと対策 – ess sup
上記サイトを参考に、git cloneをしてnvm本体をsourceします。ちなみにzshを使っていますが、何もしなくてもsourceをしたときに特にエラーは出なかったです。

git clone git://github.com/creationix/nvm.git ~/.nvm
source ~/.nvm/nvm.sh

これでnvmがインストールされたので、いよいよnodeをインストールします。

nvm install v0.6.6
node --version
v0.6.6

やっとnodeがインストールされました。

LESSインストール

ここでようやく本題です。LESSはnpmというnodeのパッケージ管理システムを使ってインストールできます。npmは上記のnvmインストールのタイミングで一緒に入っているようです。
LESSのインストールには、以下のコマンドを打ち込みます。これで2011年12月19日現在の最新バージョン1.1.6がインストールされます。

npm install less

まとめ

はじめてのCSSメタ言語はLessがおすすめ! « NAVER Engineers' Blogで紹介されているようなGUIツールを使ったほうが256倍楽だと思います。
あと、Advent Calenderを書くときはあらかじめの準備が重要ですね……

関連記事


This entry was posted in 未分類 and tagged , . Bookmark the permalink.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>