zshをホーム下にコンパイルしてみるの巻【追記あり】

普段使っているサーバーのシェルをzshにしてみたのだけど
あれ、なんだか日本語表記がおかしい。
使ってるmacではちゃんと動くのに、
マルチバイト文字を使うとtab補完がバグるぞ。あれ、なんで?
  
これはどうやらzshのバージョンが古いから起こるそうで。
とりあえず調べてみた!

$ zsh --version

やっぱりサーバーのzshが古い!
というわけで、zshを新しくするのです!
  
yum が使える環境なら

$ yum install zsh

で一発OK、問題ないらしいが、しかし。
今回は管理者権限がないので役立たずでした…オウフ
  
というわけで、zshをホームディレクトリに一からコンパイルするのです!おー!
参考にしたのはこのサイト♪
CentOSにzshをインストール - デラエモン、カイハツニッキ
  

1)ダウンロード

まず、最新版をダウンロード
(最新版はここをcheck zsh - Browse /zsh-dev at SourceForge.net
嘘です。最新版はこっちです。5.0.0でした。ZSH - Source download

$ wget http://sourceforge.net/projects/zsh/files/zsh/5.0.0/zsh-5.0.0.tar.gz/download

  

2)解凍

次に、ファイルを解凍

$ tar xvzf zsh-5.0.0.tar.gz

  

3)コンパイル

いよいよコンパイル。緊張。

$ cd zsh-5.0.0
$ ./configure
$ make
$ make install

落としてきたファイルの中に移動するのを忘れずに!不幸を背負うみたいですよ。
んで、あとは打ってひたすら待つのみ。あら簡単!
とか思ってたら make install でエラーががが。
そう甘くはないわけです。
エラーを見てみると「権限がありません」と。
そりゃそうだ、rootになれないんだから。私はなにをしてるんだ。
  
んでググッた結果、このあたりのサイトがヒット!
LPM: Local Package Manager
Vimをコンパイルしたよ - 四角革命前夜
  
なるほど、configureのときにpathも指定しちゃうのね。
私の環境に合わせて書くとこんな感じ(ほとんど一緒)

$ ./configure --prefix=$HOME/local --enable-multibyte --enable-locale
$ make
$ make install
!補足!
--enable-multibyte マルチバイト対応
--enable-locale 多言語対応、なんとなく入れてみた

ふむふむ。
というわけでもっかい configure からやり直し。
  
おっ今度はきれいに通ったぞ♪
  
さあ!これでやっと新しい zsh が使えるぞー!と思ったら。
バージョンを確認したところさっきと同じ古いまま!なぜ!why!
  
そりゃそうやん。パス通ってないし。
  

4)パスを通す

.zshrcの中に書いてあるPATHを configure のときに指定したパスに変更

 export PATH=${HOME}/local/bin:${PATH}

これでおーけー!
${PATH}をコロンの左に書いたりしちゃってすごく苦戦したのだけど
twitterで助けてもらいました♪ありがとー!
  
そしてドキドキのバージョン確認。
ちゃーんと最新のになってましたー!やふー♪
  
  



  
追記:
コードもろもろに不備があったのを修正しましたー(´;ω;`)すみません
  
あとあと!ログインシェルを変更するのを忘れてました!
これしとかないと毎回コマンドでzsh打たないといけなくなっちゃう!めんどい!
  

5)ログインシェルの変更

これを変更するには/etc/shells/に
新しいzshのパスを追加しておかないといけないのですがしかし!
これもroot権限がないとできないのです…ぐぬぬ
  
というわけでとっても荒業ですが、
今使用しているログインシェルの設定ファイル(私の場合bashだったので、.bashrc)に以下を追加

 zsh

場所は一番下にしてみました。
これでログインするたびにzshが呼ばれるようになりました♪めでたしめでたし!
  
が、他にやり方あるのかな…あったらおしえてくださーい!