管理者権限のないマシンのローカルに tmux をインストールする (Linux)

はじめに

リモートのマシンで作業をする時,tmux などのターミナルエミュレータを使うといろいろと便利です.例えば,突然 ssh の接続が切れてしまっても大丈夫ですし,別のマシンから作業を続けることもできますし,時間のかかるジョブを投げるのに使うこともできます.しかし,tmux は Ubuntu などのディストリビューションでは標準ではインストールされていませんので,apt-get 等を使ってインストールする必要があります.

本記事では,Linux系計算機サーバなどにおいて,管理者権限のない(sudo が使えない)ユーザでも tmux が使えるように,ユーザーローカル(ホームディレクトリの中)でビルド&インストールする手順について紹介します.

汎用的なルール

多くのオープンソースプロジェクトは,下記の2通りに分類されることができます.それぞれのタイプについて,ユーザーローカルでビルド・インストールする方法についての定石について書いておきます.

1. configure → make → make install タイプ

cd source_dir
./configure --prefix=${HOME}/local
make && make install

2. cmake → make → make install タイプ

cd source_dir
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=${HOME}/local
make && make install

多くのプロジェクトは,これらどちらかの方法で,ローカルにインストールすることができることが多いです.もちろん,例外も多く存在しますので,注意してください.(たとえば,Python に関係するプロジェクトなど)

ローカルへのパスの設定

ローカルへのインストールとは,実行ファイルをホームディレクトリの ~/local/bin に配置したり,ライブラリを ~/local/lib に配置することを言います.しかし,配置するだけではすぐに使えるわけではなく,パスを設定する,という作業が必要です.パスの設定は,.bashrc に以下の2行を追記します.

export PATH=$HOME/local/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/lib

bash を再起動,あるいは,

source ~/.bashrc

を実行すると,設定が反映されます.

tmux のローカルへのインストール

cmake のバージョンが 2.8 以下の時.(該当しない場合はスキップ)

cmake のバージョンが古いときは,新しいバージョンの cmake をローカルにインストールする必要があります.さらに,cmake 3.5 などは,cmake 2.8.4 以上でないとエラーとなるので,最新版のcmake のインストールは 2.8.4 をコンパイル&インストール → 3.5.1 をコンパイル&インストール,という2段階を踏むことになります.tmux のビルドには cmake 2.8.4 で十分ですが,一応,3.5.1 のインストールまで記しておきます.

wget --no-check-certificate https://cmake.org/files/v2.8/cmake-2.8.4.tar.gz
tar zxvf cmake-2.8.4.tar.gz
cd cmake-2.8.4/
./configure --prefix=${HOME}/local
gmake && gmake install
cd ..
# ここまでで十分.以下は 3.5.1 のインストール.
wget --no-check-certificate https://cmake.org/files/v3.5/cmake-3.5.1.tar.gz
tar zxvf cmake-3.5.1.tar.gz
cd cmake-3.5.1/
./configure --prefix=${HOME}/local
gmake && gmake install

依存パッケージのインストール

依存パッケージの最新版をインストールします.

mkdir tmp_install_tmux
cd tmp_install_tmux/
git clone https://github.com/libevent/libevent
cd libevent/
mkdir build && cd build/
cmake -DCMAKE_INSTALL_PREFIX=$HOME/local ..
make && make install
cd ../../
git clone https://github.com/gittup/ncurses
cd ncurses/
./configure --prefix=${HOME}/local
make && make install
cd ..

tmux のインストール

最後に,tmux をビルド・インストールします.

git clone https://github.com/tmux/tmux
cd tmux/
bash autogen.sh
./configure --prefix=${HOME}/local LDFLAGS="-L${HOME}/local/lib" CFLAGS="-I${HOME}/local/include"
make && make install

まとめ

tmux をユーザーローカルにビルド・インストールする手順について紹介しました.他のオープンソースソフトウェアについても,同じような手順でローカルに環境構築できますので,参考にしてください.Python の環境構築については,また別の記事で紹介したいと思います.

コメントをどうぞ

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