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を実行するようにしている。