Cannot allocate red zone for initial thread2007年11月17日 12時23分34秒

7.0 は BETA3 にまで上がっている。6.1-RELEASE から 7.0-BETA3 へのシステムの移行に加えて、ports も更新しようと思っている。6.1 の頃の ports が大本となっている。Xorg 6.9 から 7.2 を飛び越して、7.3 への更新もあるので大がかりだ。/usr/ports/UPDATING を読みながら進める。

まず、第一歩目から躓いた。


# portupgrade -f -o ports-mgmt/portupgrade-devel portupgrade
...
Fatal error 'Cannot allocate red zone for initial thread'
at line 384 in file /usr/src/lib/libthr/thread/thr_init.c (errno = 12)
Fatal error 'Cannot allocate red zone for initial thread'
at line 384 in file /usr/src/lib/libthr/thread/thr_init.c (errno = 12)
Fatal error 'Cannot allocate red zone for initial thread'
at line 384 in file /usr/src/lib/libthr/thread/thr_init.c (errno = 12)
Illegal instruction (core dumped)

portupgrade はスクリプトなので、このエラーは ruby から出ている事になる。ruby を入れ直したら、portupgrade は動くようになった。

しかし、portupgrade が前回中途半端に終わったため、portupgrade が依存する、databases/ruby-bdb を手動で、更新する必要があった。


# cd /usr/ports/databases/ruby-bdb; make build {de,re}isntall

この後は順調に進んでいる。