初期化したSnow LeopardにRをインストール

  1. まずはOSのsoftware update。Mac OS X統合アップデートとAirMacユーティリティのみアップデート。
  2. cran http://www.r-project.org/ からRをダウンロードしてインストール。
  3. Xcode3.2.1をインストール。
  4. Mac Portsをインストール。
  5. biOpsに必要なライブラリをインストール。

$ sudo port install fftw-3 tiff jpeg

  1. インストールしたライブラリにシンボリックリンクを張る。

$ cd /usr/include
$ sudo ln -s /opt/local/include/fftw3.h
$ for x in /opt/local/include/j*.h; do sudo ln -s $x; done
$ for x in /opt/local/include/tiff*.h; do sudo ln -s $x; done
$ cd /usr/lib
$ for x in /opt/local/lib/libfftw3.*; do sudo ln -s $x; done
$ for x in /opt/local/lib/libjpeg.*; do sudo ln -s $x; done
$ for x in /opt/local/lib/libtiff.*; do sudo ln -s $x; done

  1. RからbiOpsをインストール。

$ sudo R
> install.packages("biOps", repos="http://cran.md.tsukuba.ac.jp/", type="source")

  1. ImageMagickをインストール。

$ sudo port install ImageMagick

  1. gtk2をインストール

$ sudo port install gtk2

  1. EBImageをインストール

$ sudo curl -O "http://www.bioconductor.org/packages/2.10/bioc/src/contrib/EBImage_3.11.0.tar.gz"
$ sudo R CMD INSTALL EBImage_3.11.0.tar.gz

この方法だと、gtk-demoとした時やlibrary(EBImage)としたときにXlib: extension "RANDR" missing on display "/tmp/launch-EV8OQF/org.x:0".
というエラーがでる。無視しても動作には問題がないが、気に入らない場合はXQuartzをhttp://xquartz.macosforge.org/trac/wikiからインストールして、XQuartzからxtermを起動してRを使うとよい。

なお、以上の方法でSnow LeopardにRとbiOpsとEBImageをインストールすると自動的に64bitのアーキテクチャにインストールされる。32bitにはインストールされない。

Snow Leopardの修理

Mac Portsでmakeが見つからないといわれる。

$ which make

としても何も引っかからない。
Xcodeを入れ直すことにする。

  1. Xcode 3.2.1 Developer Toolsをダウンロードしてインストール

$ which make
/usr/bin/make

となった。しかし、

$ sudo R
> install.packages("biOps", repos="http://cran.md.tsukuba.ac.jp/", lib=.Library, type="source")

とすると、Warning: unable to re-encode rというエラーが続出する。意味が分からないのでRを入れ直すことにする。

$ sudo rm -rf /Library/Frameworks/R.framework

さらに、アプリケーションフォルダからRのアイコンを捨てる。バイナリのRをcranからダウンロードしてインストール。

$ sudo R
> install.packages("biOps", repos="http://cran.md.tsukuba.ac.jp/", lib=.Library, type="source")

同じWarning: unable to re-encode rというエラーが続出する。Rのせいではないのか。
頭にきたので、OSの初期化。

MacBookに載せているWindows 7にUbuntuをVirtualBoxで載せる

  1. VirtualBoxをインストール。
  2. Ubuntu11.10 (32bit) のisoをダウンロードしてデスクトップに置いておく。CDに焼く必要はなし。
  3. VirtualBoxの「新規」からUbuntuをインストール。
  4. 1024MBのRAMと20GBのディスクスペースを割り当てる。
  5. ダウンロードしておいたisoを選択する。
  6. あとはインストーラの指示に従うだけ。
  7. 仮想上で再起動を促されるので再起動するとインストールが完了する。
  8. アップデートをインストールしておく。

Ubuntuの見た目がずいぶん変わっててびっくり。

sudo apt-get install gtk2-engines-pixbuf

Rをインストールし直し

古いMacBookLeopardをインストールしなおす。

  1. インストールディスクを入れて起動。
  2. 古いOSはアーカイブするオプションを選ぶ。
  3. インストーラーの指示に従ってインストールを完了。
  4. ログインしたらソフトウェアアップデートでMac OS統合アップデートを入れる。

Rをインストール

  1. 最新バージョンのバイナリパッケージをcranからダウンロード。
  2. インストーラの指示に従ってインストールを完了。

XCodeをインストール

  1. Apple Developerに登録。
  2. https://developer.apple.com/downloads/index.action からXcode3.14をダウンロード。約1GB。
  3. インストーラーに従ってインストール。

MacPortsをインストール

  1. http://www.macports.org/install.php からLeopard用をダウンロードしてインストール。
  2. ターミナルを起動してviで~/.bash_profileを以下のように作成。

if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi

  1. 同様に.bashrcを以下のように作成。PATHを通しておかないとportコマンドが見つからないのエラーが出る。

export PATH=/opt/local/bin:/opt/local/sbin:${PATH}

  1. portをアップデート

sudo port selfupdate
sudo port upgrade outdated

biOpsをインストール

  1. 依存ライブラリをportからインストール。

sudo port install fftw-3 tiff jpeg

  1. シンボリックリンクを張る。参照したのはこちら。http://meme.biology.tohoku.ac.jp/students/iwasaki/biOps

% cd /usr/include
% sudo ln -s /opt/local/include/fftw3.h
% for x in /opt/local/include/j*.h; do sudo ln -s $x; done
% for x in /opt/local/include/tiff*.h; do sudo ln -s $x; done
% cd /usr/lib
% for x in /opt/local/lib/libfftw3.*; do sudo ln -s $x; done
% for x in /opt/local/lib/libjpeg.*; do sudo ln -s $x; done
% for x in /opt/local/lib/libtiff.*; do sudo ln -s $x; done

  1. Rでsourceからインストール。

install.packages("biOps"
, repos="http://cran.md.tsukuba.ac.jp/"
, lib=.Library
, type="source"
)

EBImageをインストール
http://d.hatena.ne.jp/Moment5/20111104 にしたがう。32bitならGUIからもOK。しかし以上の方法だと64ビットでは動かない。port install +universalにすればいいのかな?

64bitでのセットアップ
上の状態で、

sudo R --arch x86_64
> install.packages("biOps", repos="http://cran.md.tsukuba.ac.jp", lib=.Library, type="source")

とするとエラー終了する。

Error: libjpeg or libtiff required

sudo port install fftw-3 +universal
sudo port install tiff jpeg +universal

まだだめ。同じエラー。

EBImageをMac OS 10.5 (Leopard)にインストール

Xcodeのインストール
MacPortsのインストール
ImageMagickのインストール
gtk+-2.0のインストール

これらを行うにはユーザーにパスワードが設定されている必要がある。
Xcodeはxcode314_2809_developerdvd.dmgを使った。https://developer.apple.com/downloads/index.actionから入手できる(ただしdeveloperとしての登録が必要)。
MacPortshttps://distfiles.macports.org/MacPorts/MacPorts-2.0.3-10.5-Leopard.dmgを使った。
ImageMagickのインストールはterminalで

sudo port install ImageMagick

gtk+-2.0は

sudo port install gtk2

インストールが正常に終了したことを確認するためにgtk-demoとするとX11が開きかけてエラー終了する。
ImageMagickのチェックのためにconvert -versionとすると正常にバージョンが表示される。

Rをターミナルから起動して次のようにするとエラーが出る。

> install.packages("abind")
--- このセッションで使うために、CRANのミラーサイトを選んでください ---
Tcl/Tkインターフェースのロード中 エラー: .onLoad failed in loadNamespace() for 'tcltk', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: 共有ライブラリ '/Library/Frameworks/R.framework/Versions/2.13/Resources/library/tcltk/libs/i386/tcltk.so' を読み込めません:
dlopen(/Library/Frameworks/R.framework/Versions/2.13/Resources/library/tcltk/libs/i386/tcltk.so, 10): Library not loaded: /usr/local/lib/libtcl8.5.dylib
Referenced from: /Library/Frameworks/R.framework/Versions/2.13/Resources/library/tcltk/libs/i386/tcltk.so
Reason: image not found

これを解決するためにhttp://cran.us.r-project.org/bin/macosx/tools/から
tcltk-8.5.5-x11.dmgをインストール。

> install.packages("abind")

今度は問題なくインストールできた。

いよいよEBImageのダウンロードとインストール。

$ curl -O "http://www.bioconductor.org/packages/2.10/bioc/src/contrib/EBImage_3.11.0.tar.gz"
$ R CMD INSTALL EBImage_3.11.0.tar.gz

とすると、

Xlib: extension "RANDR" missing on display "/tmp/launch-J295Eb/:0".

というエラーがでるが、とりあえずEBImage自体のインストールは成功する模様。

> ?EBImage

とするとヘルプが参照できる。
ただし、

> example(EBImage)

とするといくつものXウィンドウが開かれるが最終的にクラッシュする。どうやらX11がおかしいようなので、http://xquartz.macosforge.org/trac/wiki/X112.6.3から最新バージョンを入手してインストール。
今度はgtk-demoとしてエラーも表示されず、

> example(EBImage)

とすると様々な画像処理の結果が表示された。

以上でMac OS LeopardにEBImageのインストールが完了。

Windows 7をサーバーにリモートデスクトップでアクセス

自宅のコンピューターから職場のコンピュータに安全にアクセスしたい。Copsshというソフトで簡単にsshサーバーがセットアップで切るらしいことをhttp://blog.spencerkellis.net/2010/06/tunneling-remote-desktop-over-ssh-in-windows-7/で知った。そこで、CopsshとPuttyとRemote Desktopを使う。
Copssh http://www.itefix.no/i2/copssh
PuttyPageantとPuttygen http://yebisuya.dip.jp/Software/PuTTY/

サーバー側の設定
まずはCopsshのインストールと設定。インストーラーを上記サイトからダウンロードして走らせる。新たなユーザーを作成することが求められるので、好きな名前でユーザを作成する。
インストールが完了したらCopsshのコントロールパネルを開いてアクセスするためのユーザーを追加する。ウィザードに従って、Domainはデフォルトのまま。ユーザーには先ほど作ったユーザーを選択。access typeはLinux shell/fstp。パスワード認証は不可にしておく。そのほかはデフォルトのまま。
認証に必要な鍵はPuttygenで生成する。秘密鍵USBメモリでクライアントに移動する。公開鍵はコピーアンドペーストでCopsshのKyesにインポートする。
Remote Desktopでのアクセスはデフォルトでは不可になっているので、ComputerのPropertiesのRemote settingsで可にする。
以上でサーバーの設定は完了。

クライアント側の設定
Puttyはサーバーのアドレスを設定する以外に、SSHのタブからTunnelの設定をする。source portは3391にdestination:3389とする。Pageant秘密鍵を登録しておくと便利。リモートデスクトップを起動してlocalhost:3391としてログインする。

以上で終わり。簡単。