トップ
|
システムの要件WINシステムは、下記の要件を満たす Cygwin や MacOSX などを含む多くのUnix系環境で動きます。
上のシステム以外、例えば64ビット環境にある方は、コンパイルオプションなどで問題を回避する必要があります。また、一部のシステムでは char型が符号無しで解釈されるので、このような環境では一部のソフトが正常に動かなくなります。 動作実績ここに挙げているのは、動作の実績があると報告された例であり、これ以外のシステムでは動かない、という意味ではありません。 データ交換装置・自動処理など 24時間365日稼働させることを想定したプロセス
解析用
コンパイルとインストールFTP サイトに置いてあるファイルは tar+gz です。適宜ツールを用いて解凍・展開してください。 autoconf 化していますので、何もチューニングしないのであれば % ./configure % make % make install でコンパイルとインストールが出来ます。チューニングしたい場合は、INSTALL というファイルがありますのでそちらをご覧下さい。 64ビット環境の場合64ビット環境の場合でも、コンパイラで32ビットモードがサポートされていれば動作可能です。 例えば、gcc の場合には -m32 オプションがサポートされている場合があります。その場合、 % CFLAGS="-m32 -O" LDFLAGS=-L/usr/X11R6/lib ./configure --prefix=/usr/local/win などとして、CFLAGS 環境変数に -m32 オプションがはいるようにすればいいです。ただし、32ビットモードのライブラリも同時にインストールされている必要がありますので、リンク時にエラーが出る場合はその点も確認してください。 その他のコンパイラをお使いの方は、それぞれのマニュアルを参照下さい。 unsigned を付けない型が符号なしの場合C 言語の変数の型に char 型がありますが、char と宣言した場合、これが符号付きか符号付きでないかは、マシンによって違います。例えば、
Plathome OpenBlockS266 kernel: 2.4.20 ファームウエア Ver.20050119 のセルフコンパイル環境
はchar型は符号無しと解釈されます。 char 型が符号無しと解釈されるシステムの判別方法は、WIN_pkg-1.1.70 以上のバージョンでは、configure の出力の後ろの方のメッセージで確認することが出来ます。 % ./configure checking for a BSD-compatible install... /usr/local/bin/ginstall -c checking whether build environment is sane... yes ... checking whether byte ordering is bigendian... no checking whether char is unsigned... no <--------------------- ここ!! checking for tm.tm_gmtoff... yes checking whether gcc needs -traditional... no checking for working memcmp... yes ... checking whether char is unsigned が no となっていれば大丈夫で、 yes となっていると駄目 です。 checking whether char is unsigned が yes となっていた場合の対処の方法ですが、コンパイラオプションで制御出来る場合があります。gcc の場合、-fsigned-char を付けます。例えば、 % CFLAGS="-fsigned-char -O" ./configure のようにします。このようにして実行した configure の出力は、checking whether char is unsigned が no に変わっているはずなので、確認して下さい。 gcc 以外のコンパイラをお使いの方は、お手数ですが各自コンパイラのマニュアルを確認していただけますようお願いします。 |