railsが起動しなくなった
以下のエラーをはきまくって起動しなくなってしまった。
Fatal error 'Cannot allocate red zone for initial thread' at line 384 in file /usr/src/lib/libthr/thread/thr_init.c (errno = 12)
どうやらlibpthreadをリンクしている古いバイナリが、何の因果かlibthrもリンクしていたりすると、libpthreadとlibthrが同時に使われてしまいエラーとなってしまうそうな。
適当にWebで調べただけなので、思いっきり受け売りだけども。
ということで、portupgrade -f中。
追記:
直った。portupgrade -fa は時間がかかりすぎると思ったので中断して、以下の方針に切り替えた。
- portupgrade -a で要更新のものだけ更新
- もう一度 rails -v してみる
- 起動すれば解決
- 起動しなければ ltrace を使ってどこで落ちたかあたりをつけ、怪しいのをportupgrade -f
結果… 3番となり解決。Ruby1.8を入れなおしたのが利いたかな?