【Linux MLDのページ】 【Linux MLDサポート】


Linux MLD 5 FAQ

scilab 2.5 の RPM がインストールできない

MLD には収録していませんが、フリーな数値計算パッケージとして著名な scilab の RPM (scilab-2.5-0.i386.rpm) を MLD5 にインストールしようとすると、
  エラー: 依存性の欠如:
          libtcl8.0.soは scilab-2.5-0 に必要とされています
          libtk8.0.soは scilab-2.5-0 に必要とされています
となってインストールできません(MLD4 では問題なかった)。

これは tcl/tk のバージョンが MLD5 では 8.3 に上がっているためで、 このような場合には一般的に、新しい環境でビルドし直す必要があります。

しかし、scilab 2.5 はビルドし直しても正常動作しません。起動はするものの、 グラフィックのウィンドウが出るタイミングで終了してしまいます。
(終了の直前に
 Warning: Cannot convert string "XtorientVertical" to type Orientation
が出ますが、これは終了してしまう原因ではありません。)

原因は scilab で使われている X11 アテナウィジェット Xaw と Xaw3d の互換性が MLD5 で収録した XFree86-4.0.1 では損なわれていることにあるようです。 scilab のビルドでは Xaw3d があるならそれを使おうとします。 しかしソースに書かれている include ファイルは Xaw のものです。 以前はこれでよかったのですが、 XFree86-4.0.1 では Xaw に追加が行われたのに対し、Xaw3d は変更されていません。 このため内部構造体メンバーのオフセットがずれてしまったと思われます。 (内部的な構造体メンバーにアクセスしている scilab も良くありません。)

この問題はコンパイル時に -DOLDXAW を指定すると解決します。
以下にこれらの対処をしてビルドした RPM を置いておきます。 Linux で科学しよう!Scilab のページも ご覧ください。


【Linux MLD のページ】 【Linux MLDサポート】