jemallocのインストール

断片化の回避やスケール可能な並行処理に対応したmallocの汎用実装であるjemallocをソースコードからインストールする。

jemallocはMariaDBのTokuDBのビルドに必要なライブラリーだ。

インストール情報
項目 説明
配布元 jemalloc
リポジトリー jemalloc/jemalloc
手順 jemalloc/INSTALL.md at dev · jemalloc/jemalloc
依存情報
依存先 (必須) Make (GNU Make)
依存先 (任意)
依存元 MariaDB (TokuDB)
インストールコマンド
sh -eux <<-"EOT"
LOCAL=~/.local J=$(grep -cs '^processor' /proc/cpuinfo || echo 2)
PKG=jemalloc VER=5.2.0 TAG=$VER
mkdir -p "$LOCAL/src"
cd "$LOCAL/src"

if command -v git >/dev/null; then
  [ -e $PKG ] || git clone --depth 1 https://github.com/jemalloc/jemalloc $PKG
  cd $PKG
  git fetch --depth 1 origin tag $TAG
  git checkout -f $TAG
  ./autogen.sh
else
  [ -e $PKG-$VER ] || wget https://github.com/jemalloc/jemalloc/releases/download/$VER/$PKG-$VER.tar.bz2
  tar -xf $PKG-$VER.*
  cd $PKG-$VER
fi

make -kj $J distclean clean || :
./configure --prefix="$LOCAL/stow/$PKG-$VER"
make -j $J
make -j $J check
make -j $J install

cd "$LOCAL/stow"
echo $PKG-[0-9]* | xargs -n 1 stow --ignore=dir -D
stow --ignore=dir $PKG-$VER
EOT
インストール例
日付 バージョン OS 依存関係
2019-05-03 5.2.0 Ubuntu 18.04 GNU Make 4.2.1, GCC 7.4.0

リポジトリーからのソースコードの入手時には,autogen.shを実行すれば,configureの実行は不要だ。ただし,リリース用ソースコードからのビルド手順と統一するために,configureを実行するようにしている。

コメントを残す

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