R を Homebrew でインストールする際に memory profiling を有効にする

Homebrew についてちょっと調べれば誰でもできると思いますが、以下のように r.rb を変更すれば –enable-memory-profiling オプションが追加されます。

/usr/local$ git diff Library/Formula/r.rb
diff --git a/Library/Formula/r.rb b/Library/Formula/r.rb
index 6696a37..1055133 100644
--- a/Library/Formula/r.rb
+++ b/Library/Formula/r.rb
@@ -15,6 +15,7 @@ class R < Formula
   head 'https://svn.r-project.org/R/trunk'

   option 'with-valgrind', 'Compile an unoptimized build with support for the Valgrind debugger'
+  option 'enable-memory-profiling', 'attempt to compile support for Rprofmem(), tracemem()'

   depends_on 'readline'
   depends_on 'libtiff'
@@ -40,6 +41,7 @@ class R < Formula
       "--with-lapack"
     ]
     args << '--with-valgrind-instrumentation=2' if build.include? 'with-valgrind'
+    args << '--enable-memory-profiling' if build.include? 'enable-memory-profiling'

     # Pull down recommended packages if building from HEAD.
     system './tools/rsync-recommended' if build.head?

R をインストールする際のオプションを確認してみます。

$ brew options r
--enable-memory-profiling
	attempt to compile support for Rprofmem(), tracemem()
--with-valgrind
	Compile an unoptimized build with support for the Valgrind debugger

ちゃんと反映されていますね。

–enable-memory-profiling を付与してインストールすると次のように configure オプションにちゃんと指定されているのがわかるかと思います。

$ brew install -v --enable-memory-profiling r
==> Downloading http://cran.r-project.org/src/base/R-2/R-2.15.2.tar.gz
Already downloaded: /Users/arabiki/Library/Caches/Homebrew/r-2.15.2.tar.gz
tar xf /Users/arabiki/Library/Caches/Homebrew/r-2.15.2.tar.gz
==> Using Homebrew-provided fortran compiler.
This may be changed by setting the FC environment variable.
==> ./configure --prefix=/usr/local/Cellar/r/2.15.2 --with-aqua --enable-R-framework --with-lapack --enable-memory-profiling
./configure --prefix=/usr/local/Cellar/r/2.15.2 --with-aqua --enable-R-framework --with-lapack --enable-memory-profiling

R 2.15.2 になっているのは、これでインストールした時の最新バージョンが R 2.15.2 というだけです。

以上簡単ですね!!

広告
ロードできない RMeCab を無理やりロードしてみた nodejs-mode.el 改め nodejs-repl.el 0.0.2 をリリースしました
※このエントリーははてなダイアリーから移行したものです。過去のコメントなどはそちらを参照してください