[トップ][一覧][最近の更新]

archives/2006/05

OpenBSD/Lisp/sbcl

Category of OpenBSD
Category of Lisp

やたー。sf:sbclがOpenBSDで動いたよー。

調子に乗ってportsまで作ったよー: files:openbsd/sbcl.tgz

bootstrapにclispを使うのでビルドに時間がかかるけど、こればかりは我慢すべし。

やったことといえば、OpenBSDで動かない問題を解決するパッチ を使って、 あとはHaskell/2005/11/16/__errnoと同様のシンボル未解決問題をぷちぷち潰しただけ。

これでclispよりずっと快適なLisp環境ができた。めでたしめでたし。

OpenBSD/prebind

Category of OpenBSD

marc-openbsd-cvs:114747629917265によってprebindはOpenBSD-man:ldconfigと統合された。-Pでprebind、-Dでprebind_stripになる。

ちょっと前の変更で-mでも壊れなくなったみたいなので、常用できるようになったと言えるかな?

現在の手元の環境では、

 # ldconfig -Pv /usr/bin /usr/sbin \
                /usr/X11R6/bin \
                /usr/local/bin /usr/local/libexec /usr/local/sbin \
                /usr/local/lib/erlang/erts-5.4.13/bin \
                /usr/local/mozilla-firefox

でもきちんと動作している模様。

prebindすると、実行ファイルと、それにリンクしている共有ライブラリに手を入れるので、 portsデータベースの整合性が取れなくなってしまう(サイズとMD5のチェックサムが狂う)。 pkg_*の方でどうにかしないといけないんだろうな。

OpenBSD/wpi

Category of OpenBSD

blob-freeなIntel PRO/Wireless 3945ABGのドライバらしい。 すごいね。

Damien Bergaminiって人はOpenBSD-man:ipwやらOpenBSD-man:iwiやら、 無線まわりやってる人物。

Memo/tar-or-make-installworld

でも,無理やり installworld せず(事前に DESTDIR 指定してよその directory に installworld しておいた上で,その中身を)tar 使って / から上書きする,ってのは,それ普通に installworld するのと何がどれくらい違うのだろう...

libcが入れ替わってmake自身が動かなくなることがあります。 シングルユーザでtarするとファイルの展開がtarの実行で完結するので少しだけ安全。

libcがきちんとbumpされているなら問題になることは無いと思います。

Mozilla/disable-output-escaping

かなり前のネタなんだけど、

disable-output-escaping="yes"が無効なMozillaにおいて、RSSのXSL変換後にJavascriptで要素を更新する手法を適用したのだが、変換後のHTML内でJavascriptからinnerHTMLにtextContentを入れる操作で例外が発生し、要素を更新できない現象。

以前ダメだったのが、今はエラーを吐きながらも変換できるようになった(Firefox 1.5.0.3)。

とりあえずテスト運用してみる。

JavascriptをOnにしないと動かない、 という本質的な問題のはなんとかならんのかねえ。

WiLiKi/Lightbox

こんなんどうでしょ。下のPuffyをクリック!

OpenBSD3.8 OpenBSD3.9
OpenBSD 3.8 OpenBSD 3.9

もとネタは山口さんのところのimage.scm です。

使い方はWiLiKi/Hack/Lightboxに。

OpenBSD/Note:prebind

Category of OpenBSD

と思ったら、fontforgeとかfaacはセグるようなるな。 ほかにも動かなくなるソフトがいろいろ。

たくさんの.soファイルをロードするプログラム(gimpとかmltermとか)は明らかに起動が速くなった。

ん?faacはリビルドしてprebindしたら動いたぞ。fontforgeは無理か。

WiLiKi/Note:Lightbox

ん?RSS出力が壊れてる。 要修正だな。

sxmlの属性値が(string . string)になっているではないですか。

というわけで、car側をstring->symbolすることで回避。

OpenBSD/prebind

Category of OpenBSD

marc-openbsd-cvs:114667303112550

prelinkとはちょっと違うらしい。これで起動が速くなるのだろうか。

まあld.soを作りなおすだけでいいから動作テストは簡単さね。 ただ、以前の環境と比較するのは面倒だな。

Qtあたりが一番恩恵を受けると思うが、入れてないし…… Scribusのテストも兼ねてQtをビルドしますか。

使い方はそのままなんだけど(もうすぐOpenBSD-man:prebindに反映されるだろうけど)、 いちおうメモしておくと、 OpenBSD-currentを用意して、ld.so以下を再構築、インストール。

あとはprebindしたいバイナリorディレクトリをtargetとするならば、

 # prebind target

でおっけー。

こんな感じ。

# prebind emacs
ret
file or dir mode 32768
txtbusy processing /usr/libexec/ld.so
opened /usr/libexec/ld.so.prebxxxxxxxxxx 4 mode 100555
opened /usr/libexec/ld.so 5
total new blocks 328

いちばんここらへんにやばそうなemacs22(emacs-currentを野良ビルドしたもの)でも、 とりあえず大丈夫みたい。firefox-binも無事動作。