Cygwinについて |
トップページ | Unix | Cygwin | Vim | WindowMaker | Zsh | テスト | H.O,K. | curry | 日記 |
|
Cygwin+X Cygwin+X私は普段, Cygwin+Xの環境を使用しています. Cygwinとは, 旧cygnus社(現在redhatが買収)が作成した, Windows上での, Unixエミュレータです. Posix(Unixの標準規格)にあわせたシステムインタフェース cygwin1.dllで実装しています. (実際にソースは見ていませんが .....) そのため, Linuxと非常によく似たインターフェースを持っています. わたし自身, OSとしてはUnixの方が断然使いやすいのですが, 職場でMS-Wordを強要されたり, デバイスドライバをインストールするのが大変だったり で, Cygwin+Xを利用しています. Cygwin+X環境を整えるには, Cygwin + X + 日本語アプリケーション のサイトが訳立つと思います. Cygwin/Xコンパイル時の注意点ここでは, Cygwin/Xのコンパイルについての注意点(メモ)を記述します. cygX11-6.dllの用意/usr/X11R6/bin/cygX11-6.dll は, デフォルトでは日本語表示に支障があるため, 下記のサイトから入手する. (自力コンパイルも可能であるが, 非力なマシンでは大変時間がかかる. ) =
<locale.h>でなく<X11/locale.h>を使う.locale.h は, "C"ロケールしかサポートしてないようですので, X11/locale.hを使用します. コンパイル時には, -DX_LOCALE オプションをつけてコンパイルします. (X_LOCALEが設定されていないと, X11/locale.hは locale.hを読み込む設定になっています. ) XwcDrawString でなく, XmbDrawStringを使用する.XwcDrawStringでは, どうやらうまく日本語表示ができないようです. cygwinでw3mimgdisplay.exeをコンパイルするw3m(テキストブラウザ)には, 画像をインライン表示する機能が あります. VineLinuxなどでは, ディストリビューションに格納されている w3mimgdisplayが正常に動作しますが, Cygwinのsetup.exe で取得できるw3mのw3mimgdisplay.exeは, 正常に動作しません. そこで, w3mをソースからコンパイルしようと考えたわけです. 必要なもの
その他, libjpeg, libpng, libtiffなどが必要になると思います. ※ gdk-pixbuf-xlib-2.0を, setup.exeからインストール可能ですが, w3mで使用できるのは, 1.x系のgdk-pixbufのようです. gdk-pixbufのコンパイル通常にコンパイル(./configure ; make)ではコンパイルできません. まず, ./configureをしましょう. ./configure --prefix=/usr/local ./configure した後, 以下のMakefileの編集が必要です. ./demo/Makefile ./gdk-pixbuf/Makefile ./gdk-pixbuf/pixops/Makefile Makefileの変数を以下のように設定します. ● glibの設定 GLIB_CFLAGS = `pkg-config --cflags glib` GLIB_LIBS = `pkg-config --libs glib` ● gmoduleの設定 GMODULE_FLAGS = `pkg-config --cflags gmodule` GMODULE_LIBS = `pkg-config --libs gmodule` ● gtk+の設定 GTK_CFLAGS = `pkg-config --cflags gtk+` GTK_LIBS = `pkg-config --libs gtk+` gds-pixbuf/test-gdk-pixbuf.exe と demo/pixbuf-demo.exe コンパイル時に -lpng -ltiff -ljpeg オプションがないためコンパイルに失敗するかも 知れません. そのときは, makeの出力メッセージをみて 手でコンパイルしましょう. コンパイルが終了すれば, make installをしましょう. ヘッダファイルのディレクトリにシンボリックリンクを作成します. $ cd /usr/local/include/gdk-pixbuf-1.0$ $ ln -s gdk-pixbuf gdk-pixbuf-xlib w3mのコンパイルまず, configureを行います. ./configure --prefix=/usr/local --enable-FEATURE --with-PACKAGE config.hを編集して強制的に以下のオプションを設定します. $ vi ./config.h #define USE_W3MIMG_X11 1 #define USE_GDKPIXBUF 1 さらに, Makefileも修正します. $ vi ./Makefile # IMGLDFLAGS変数の値を変更します. IMGLDFLAGS = /usr/local/lib/libgdk_pixbuf_xlib.a \ `pkg-config --libs gdk` \ -ltiff -lpng -ljpeg \ -L/usr/X11R6/lib -lXext -lX11 $ vi w3mimg/x11/Makefile # ファイルの先頭に以下の行を追加します. IMGCFLAGS = -I/usr/local/include/gdk-pixbuf-1.0 \ `pkg-config --cflags gdk` $ vi w3mimg/Makefile # IMGOBJSの値を変更します. IMGOBJS=w3mimg.o x11/x11_w3mimg.o その後, make && make installを行います. 私がコンパイルした w3mimgdisplay.exe を以下においておきます. w3mimgdisplay.exe.gz(0.5.1) 解凍後, /usr/local/libexec/w3mディレクトリに配置すれば使用できると 思います. CygwinリンクCygwinに関して, 私がよく参照するページをリンクしておきます. 勝手にリンクさせていただいております. 都合の悪い方は, sakaihdt@d2.dion.co.jpまで御連絡ください. |
トップページ | Unix | Cygwin | Vim | WindowMaker | Zsh | テスト | H.O,K. | curry | 日記 |