さくらVPSにubuntu12.04LTSをインストール
インストール後、12.10へのアップグレード手法に従い、/etc/update-manager/release-upgradesを修正し、OSアップグレードを実行する
OSアップグレード後
apt-get update
apt-get upgrade
で、apt-getリポジトリとインストール済みプログラムを更新
次に依存ライブラリのインストール
apt-get install build-essential libglib2.0-dev libcairomm-1.0-dev libpng12-dev libgif-dev libjpeg-dev libtiff-dev libexif-dev bison gettext
今回はcheckinstallでソースから入れたパッケージの管理もするので、apt-get install checkinstallする
それと、nginx使うのでnginxも入れておく
apt-get install libgdiplus mono-runtime xsp mono-fastcgi-server4
以上。プログラム稼働編にすすめ
C#4.0だが、バグがとれている安定版。
ソースコードで最新版突っ込むと、まだバグがあるっぽくて地獄です
/usr/local/srcに移動し、
libgdiplus, xsp, monoの最新版のソースコードを落とす
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.9.tar.bz2
wget http://download.mono-project.com/sources/mono/mono-3.0.7.tar.bz2
wget http://download.mono-project.com/sources/xsp/xsp-2.10.2.tar.bz2
apache使う場合はmod-monoも必要
libgdiplusからインストールする
./configureして、makeする
make installの代わりにcheckinstallを使う(apt-getの方が追いついた時にアンインストールできるように)
次にmonoをインストール
./configure --with-libgdiplus=/usr/local/lib/libgdiplus.laと指定する以外はlibgdiplusと同じ
monoのコンパイルは時間がかかるので(.Net Framework含めて全部コンパイルするので)マターリとお待ちください
最後にxspをインストール
PKG_CONFIG_PATH環境変数に/usr/local/lib/pkgconfigを追加
あとはlibgdiplusとインストール方法は変わらず
参考資料(こちらはmono2.1=.NET4.0とApacheとmod_monoを使う方法)
http://www.atmarkit.co.jp/ait/articles/1303/15/news069.html
fastcgi-mono-server4を使ってnginxとつなぐ
これが一番わかり易い
https://github.com/ServiceStack/ServiceStack/wiki/Run-ServiceStack-in-Fastcgi-hosted-on-nginx
mono3使う場合は実はバグが有って
http://stackoverflow.com/questions/13239113/does-fastcgi-mono-serverx-work-with-mono-3-0-nginx-1-2-4
このバグがまだ治ってないので、
/usr/local/lib/mono/4.5$ sudo ln -s ../4.0/fastcgi-mono-server4.exe
すると上手くいった