RRDtool 難しくなってる…

temp_humid
以前から時々使っているツールで、RRDtool というのがあります。これはコンピュータのフリーソフトで、一種のデータベースソフトなのですが、時系列に従って変化する数値データを扱うのを得意としています。データを全て保存しておくのではなくて、例えば 5分刻みで過去 1日分のデータと、さらに一日刻みで過去 1年分のデータとか、そういう保存のしかたをします。つまり、今日の気温の変化とか、今年一年の日最高気温の変化とか、そういう情報を集めるのに向いているわけです。RRD というのは、round-robin database の略のようです。
例の温度リモコンですが、せっかく温度計と湿度計が付いているわけで、そのデータをグラフで見られるようにしようと考えたのでした。早速 RRDtool のインストールです。昔は、ソースを展開してビルドして、必要なライブラリがなければそれをインストールして、という手順だったのですが、最近はパッケージ管理が普及していて、NetBSD では /usr/pkgsrc/database/rrdtool で make install とすれば、簡単(?)にインストールできることになっています。
がしかーし。データベースは動いたのですが、グラフを作成する rrdgraph というコマンドが動きません。がーん。なんでも、Pango とかいうツールがエラーを起こしていて、それによると fontconfig というのがうまく設定できていないから、直せ、だそうです。こんなエラーです。

(process:nnnn): Pango-CRITICAL **: No fonts found:
This probably means that the fontconfig
library is not correctly configured. You may need to
edit the fonts.conf configuration file. More information
about fontconfig can be found in the fontconfig(3) manual
page and on http://fontconfig.org

(process:nnnn): Pango-WARNING **: failed to find shape engine, expect ugly
output. engine-type='PangoRenderFc', script='common'

(process:nnnn): Pango-WARNING **: failed to find shape engine, expect ugly
output. engine-type='PangoRenderFc', script='latin'

しかし、make install 一発でインストールしてしまった身としては、なんのことやらさっぱり分かりません。昔は良かった…。というか、昔は手作業だったので、何か問題があれば、早い段階で見つけられたのですが、最近はインストールの依存関係が複雑で、素人には到底手が出せません。Pango のドキュメントを読んだり、fontconfig のドキュメントを読んだり…。それでも分かりません。
少し休憩したのち、RRDtool のインストールドキュメントを読んでみたところ、fontconfig の設定には fc-cache とかいうコマンドが使え、現状認識できているフォントの一覧が fc-cat とかで見られると書かれていたので試してみます。しかし、フォントが全然出てこない! 最近は X11 のフォントもスケーラブルになったりしていて、私の知識(X11R5 の時代だ)は古すぎて対応不可です。しかし、しばらく悩んでから /usr/X11R6/lib/X11/fonts のディレクトリを見てみたところ、なんと中身が空(ディレクトリ群はある)ではないですか。当たり前です。私のおうちサーバーは X11 を使う予定がなかったので、フォントをインストールしていないのですから。
そーかー。それが原因だ。RRDtool は、X11 のフォントが入っていないと動かないのでした。昔からそうだったっけ? RRDtool のパッケージ管理も、ライブラリやツールの依存関係は見てくれますが、X11 のフォントがインストールされていないことまでは警告してくれなかったのでした。ふー。
改めて NetBSD の sets を探し、xfont.tgz を展開しました。/var/cache/fontconfig/ の中を掃除してから fc-cache -v としたところ、キャッシュが再構築されました。fc-cat も大丈夫そうです。ここで rrdgraph を動かしたら、無事にグラフができました。あー、大変だった!

気圧

温度、湿度を測っていると、今度は気圧を測定したくなってきます。こんなの見つけたー。でも、ちょっと高いかも。