zsh をローカルインストールする (2019/12/27)
Linux 環境でsudo
権限なしで zsh を使いたい方へ。
色々ハマったので備忘録も兼ねて。
INDEX
準備
zsh の置き場を決めてディレクトリを作っておく。
今回は$HOME/.local
ディレクトリにインストールする。
$ mkdir ~/.local
ncursesのインストール
早速 zsh をインストールしようとしたら、configure
時に以下のようなエラーを吐いて落ちた。
configure: error: "No terminal handling library was found on your system.
This is probably a library called 'curses' or 'ncurses'. You may
need to install a package called 'curses-devel' or 'ncurses-devel' on your
system."
調べたところ、ncurses をローカルインストールしたら zsh がインストールできたというサイトがあった[2]ので、こちらを参考に ncurses をインストールする。
アナウンスサイトはこちら。
ディストリビューションへのリンクがいくつかあるが、2019/12/27 時点で ncurses-6.0 以降のバージョンでは zsh が動作しなかったため、ncurses-5.9 をインストールする。
まずはcurl
でダウンロードして解凍。
$ curl -L ftp://ftp.invisible-island.net/ncurses/ncurses-5.9.tar.gz > ncurses.tar.gz
$ tar zxvf ncurses.tar.gz
解凍できたら$HOME/.local/ncurses
下にインストール。
$ mkdir ~/.local/ncurses
$ cd ncurses-5.9
$ ./configure \
--prefix=$HOME/.local/ncurses \
--without-cxx-binding \
--with-shared \
--enable-widec
$ make; make install
zshのインストール
どこからでもいいので、欲しいバージョンの zsh をダウンロードしてきて解凍する。
今回は SourceForge から取ってくることにする。
現在 (2019/12/27) の最新バージョンは zsh-5.7.1。
$ cd ~/
$ curl -L https://sourceforge.net/projects/zsh/files/zsh/5.7.1/zsh-5.7.1.tar.xz > zsh-5.7.1.tar.xz
$ xz -dc zsh-5.7.1.tar.xz | tar xfv -
解凍が完了したらインストールする。
オプションに関しては参考にさせていただいたサイトを見ていくつか設定した。
特に--with-tcsetpgrp
オプションはつけないとエラーで落ちてインストールできなかった。
$ mkdir ~/.local/zsh
$ cd ~/zsh-5.7.1
$ ./configure \
--prefix=$HOME/.local/zsh \
--enable-cflags="-I $HOME/.local/ncurses/include" \
--enable-cppflags="-I $HOME/.local/ncurses/include" \
--enable-ldflags="-L $HOME/.local/ncurses/lib" \
--enable-multibyte \
--enable-locale \
--with-tcsetpgrp
$ make; make install
必要があれば .bashrc にzsh
alias を追加して、
# その他設定
# ...
alias zsh=$HOME/.local/zsh/bin/zsh
source
で bash の設定を反映させる。
$ source ~/.bashrc
下記が実行できればOK。
$ zsh
参考にさせていただいたサイト
[1] zsh を一般ユーザでインストール
[2] Unix :: zsh / zsh-5.0.2 のインストール
[3] How do I use curl to download content from sourceforge?
Author And Source
この問題について(zsh をローカルインストールする (2019/12/27)), 我々は、より多くの情報をここで見つけました https://qiita.com/zettaittenani/items/5c3c8541766e676965ec著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .