Cygwinのページ
準備中です。旧ページのほうも御覧ください。
- Cygwin-1.* のインストール(2000/12/04)
setup.exe を使ったインストール方法を書いてみました。現在インストール完了
までしか作成していませんが、さらなるカスタマイズ方法についても書く予定です。
ちなみに図として挿入している画像ファイルのフォーマットは png です。
GNU screen-3.9.4 を Cygwin-1.1 で
make するためのパッチ(もしかしたら ncurses が必要かも)
なお、これあててもちょっと不具合が残ってます。
(2000.05.12 追記)
上記不具合とは関係ないですが、パッチがバグってました。それの修正と
Makefile.in へのパッチも含む新しいファイルに差し替えました。あと、
screen の make には、要 libcrypt。
いま手許にあるもの:
ktrn-3.7.1-3.5 with mime-patch, acct.h, acct-6.3.2(の、一部),
inetutils-1.3.2 with patch, inn-CURRENT-20000413(?), jwhois-2.4.1,
libcrypt, man-1.5g, ncurses-5.0, nkf-1.7, perl5.5.660 with patch,
readline-2.2, screen-3.9.5, shtool-1.4.8, ssh-1.2.27, tcsh-6.09.00,
textutils-2.0, vim3.0-jvim2.0a, zlib-1.1.3
戻る
最近の作業記録
これだけではさすがにあんまりなので(前のページはほとんどいじってないし)、
Cygwin を使ってコンパイルに挑戦してみたり 環境設定したりの記録を残してみる
ことにする。
- [ コンパイル記録 ]
- 何も書いていない限り、Windows98 + Cygwin-B20.1 で Make して…いたの
ですが、4月くらいから Windows2000 Pro + 1.1 prerelease → 1.1 release
でやってます。
きりがないので現在の環境(2000/10/12):
- Windows2000 Pro + 1.1.1 Release?
- Windows Me + 1.1.4 Release
いまは、Windows Me の方がメインですね。なにかコンパイルしたら OS とかも
書いておくことにします。
- いろいろ (2000/11/16)
まっさらな WindowsME に 1.1.4 を入れると、ネットワーク周りがまともに
機能しない(Win98 からのアップグレードなら使える)ので、
WindowsME + 1.1.5 でやってるんですがちゃんと動いてくれないアプリとか
あってちょっとイヤーンな感じです。Perl がちゃんと動いてくれると
いいんですけど…。
- tcsh-6.09.00 (2000/03/30)
WindowsNT 向けの "#ifdef" のほとんどを、CYGWIN 環境下では
使用しないで コンパイルするように書き換える。動作しているが、なんか変。
(2000.04.07 追記)
ncurses-5.0 を入れて、err_* でひっかかるのでこのへんは tcsh 自身のそれを
使うように書き換えて make したら、動くものができた。コマンド窓をスクロール
させた状態でキーたたいても戻ってくれないみたいなのがアレですけど。なんか
しくじった?
- tcsh-6.07.02 (2000/04/05)
ncueses-5.0 をインストールした後、昔用意してた tar アーカイブを make して
みる。err_ なんちゃらでひっかかったが、一応コンパイルできた。ちゃんと動い
ているように見える。ncursesを使ったら、tcsh-6.09 も動く…のかなぁ。
- squid-2.3.STABLE2 (2000/03/30)
一応、configure + make でコンパイルは終了する。"squid -z" で
キャッシュ ディレクトリを作ることはできるが、サーバとして(Win98 上で)
squid を起動させると unlinkd がクラッシュする。それでも一応動きつづけて
くれるみたいではあるが、動作が重たい上に「ブラウザから squid に接続でき
ない」。
いっしょに make されるテスト用クライアントプログラム (client) で
他の proxy サーバに接続したりはできる。
- lpr-0.35 (2000/03/30)
lpr とか lprm のソースなのだが、どこから取ってきたのか忘れた。
Cygwin 用の定義を追加したり、ulong をただの long で typedef したりして
一応 make はできそうなのだが、いくつか関数がなかったり、そもそも
UNIX ドメイン ソケットが必要だったりで、B20.1 では相当手を入れないと
make できそうにない。 それだけの価値があるかというと、そうでもない
ような。それに、lpd(デーモン)が make できてかつちゃんと使えるのかと
いう疑問もある。
(2000.04.07 追記)
そもそも Windows2000 に lpr コマンドがあるので、わざわざ作ることも
ないかと思い、やめる。もっとも、Win2000 のそれには lpr と lpq しか
ないし、書式が UNIX コマンドのそれとは微妙に違うと思う…
- a2ps4.0 (2000/03/30)
Make はできてますが、動作確認はしてません。
(2000.04.07 追記)
デフォルトのままでは、a2ps にかけるとそのまま lpr コマンドでプリンタに
吐き出そうとする (@_@) ので、そこを書き換えてコンパイル。とりあえず、
PostScript ファイルを吐き出してくれますが、いかんせん日本語文字コードに
対応していなかった(みたい)。
- inetutils-1.3.2 (2000/04/07)
h_errno とか使おうとして怒られるので、これを使わないでコンパイルを
行うように書き換えて、make。あ、その前にパッチをあてたんですが、これは
もしかしたら不要なのかもしれない(Cygwin-1.1 には UNIX ドメインソケット
のエミュレーションが入ってるし)。
で、コンパイルできたし、インストールして ftp 接続して ls できるとかは
見たんですが、肝心の telnet ができない。よそから login.exe をもってきて
突っ込んであるんだけど、どうも認証してくれていない模様。
Administrators 権限のあるユーザで稼動した状態じゃないとだめなのか?
(2000.04.28 追記)
サービスとして動かせばすべてオーケーでした。パスワード認証も通ります…
が、Power Users グループの人じゃないと使うのは駄目な模様。
(2000.05.01 追記)
忘れてましたが、サービス用のユーザを作ってやったほうがいいです。そうで
ないと、プロセスをとめたり再起動したりする手段が「OS 再起動」くらいしか
なくなって、つらいです。
- regex-0.12 (2000/04/11)
inn を make しようとすると、regex.h がないとほざくので、しょうがないから
探してきて make する。コンパイルして、regex.h を /usr/local/include に
コピー、regex.o をとりあえずそのまま /usr/local/lib にコピー。
- inn-CURRENT-*.tar.gz (2000/04/19)
2.2.2 を make しようとすると、Perl のライブラリをリンクする段階で
つまづいてにっちもさっちもいかないので、しょうがないから最近の
snapshot を取得してくる。inews とか innd なんかは make できるんだけども、
いくつか make できないのがあるのと、inn を使っても krn が make できな
かったので、とりあえずほったらかし。
- krn (2000/04/19)
nntp-1.5.11 を拾ってきて、make client で inews.exe を作ってインストール。
その後、krn を make する。途中で nntp のソースの場所を聞いてくるので
それを指定する必要がある。
いくつかのヘッダファイルの存在が Configure で検出されてないので、
それを手直しして makedepend して、make。画面表示は SJIS encoding なので
文字コードは SJIS に指定して、ファイルの文字コードは JIS にする。
一応読み書きできるのであるが、英語のままのメッセージがあるのはどこか
しくじっている…んだろうな、やっぱ。
- textutils-2.0 (2000/04/19)
textutils をコンパイルする。とくに問題なかったような気がする。
make check すると失敗するテストがあるが、それは既存のやつ (1.2) でも
同じようなので気にしないことにしてインストールする。
ていうか、なんで cygwin のパッケージには 1.2 が使われているんだ?
- GNU finger-1.37 (2000/04/28)
ええと、acct.h がないとか言うので、Linux からかっぱらってきて適当に
修正して、どうにかコンパイルが通るところまではたどり着いたんですが、
fingerd は何も返しません。まぁ、あたりまえか?ちなみに finger は、
動くかどうかわかりません。確認できる環境がないので…。まぁ、Windows
の finger クライアントがあるので、動いてもあまりうれしくありませんが。
(2000.11.16 追記)
WindowsMe + 1.1.5 環境で、MkLinux からかっぱらってきた sys/acct.h と
linux/acct.h を使って Make してみました。一応 fingerd も動くようで、
ログイン名とか返してくれますが、だんまりになってしまって finger
クライアントを Ctrl-C とかで終わらせる羽目に。うーん?ログイン状況か
なにかを取得しようとしたまま fingerd がだんまりになってしまっている
んですかね。
- GNU screen-3.09.04 (2000/04/28)
Cygwin-1.1 で UNIX ドメインソケットがサポートされているおかげで、
動きます。ただし、ncurses ライブラリを使った状態でしか確認してません。
基本的に、ifdef linux なところを cygwin でも有効になるようにしてやれば
通ります。あと、設定ファイルとかの置き場所も修正する必要があるかも。
で、そのまま「わーい、できた」と動かすとハマルので、はやる気持ちを
抑えつつ touch /etc/ttys してやる、と。なるほど、screen とはこういう
やつなのか。おもしろいね。というわけで、
パッチ
置いておきます。
(2000.05.01 追記)
なんか、スクリーンロックかけると復帰できなくなります。
uscreens に置かれるファイル名は [process_id].nul.[ hostname ] に
なっているのに、[ process_id ].tty0.[ hostname ] とか開こうと
しているためと思われるが、有効な策はまだみつからず。
(2000.05.12 追記)
screen-3.9.5 が linux 関係の ftp サーバ(どこだったか忘れた)に
あったので拾ってくる。3.9.4 のパッチをあててみると、ほぼそのまま
適用できる。1箇所 reject されるがそれは無視して make することが
できる。
(2000.10.12 追記)
WinMe + Cygwin-1.1.4 上で screen-3.9.8 を make してみる。
さすがにパッチをそのまま適用することはできないと思うので、
make の時にひっかかるところだけを手で編集する。ちなみに termcap
ライブラリを使用。状況としては 3.9.4 と同じように、サスペンドなど
すると復帰できない…のだが、なぜか復帰できる場合もあって、
よくわからない。screen コマンドで復帰しようとすると失敗するのかなとも
思うが、ではサスペンド後 fg コマンドでいつも復帰できるかというと
そうでもない感じ。ちなみにパッチは用意していません。
- Perl-5.5.660 (2000/05/22)
今さらかもしれんが、Win98 にインストールした Cygwin-1.1.1 上で
Perl-5.5.660 を make してみる。なんか dllwrap の段階で、"/tmp\hoge"
にアクセスしようとする…("/" でなくて "\" なのがポイント)。
Cygwin 起動時に環境変数 TMP, TEMP を消していたのをやめたら正常に
進行するようになったんですけども、これってもしかしてバグ?それとも
仕様?
- [ 環境設定記録 ]
- Cygwin-1.1 netrelease を入れる。(2000/03/30)
といっても、まだ出ていないのでpre-release 版、ですが。
今までみたくインストーラが起動して…ではなくて、tar.gz アーカイブを
シコシコと展開していく地道な作業になります。一応、インストーラも
準備されつつあるようです。
詳しいことは後日書くとして、今はインストールも終わって最新の
snapshot をコンパイル中です。それにしても実行速度が少し遅い
ような感じがするのは気のせいかしらん。
(2000/04/05 追記)
新しい snapshot を突っ込んでみる。わりと快適。それにしても、
runtest がちゃんと動いてくれないんですけど…環境変数を適当に
設定しちゃったけど、これで正しいのか??
(2000.04.07 追記)
ちなみに、インストールするには「バイナリの tar.gz アーカイブを全部」
と、「インストールのために必要な gzip と tar と(B20.1 の?)cygwin1.dll」
の zip アーカイブをダウンロードして、zip アーカイブを展開して、
こいつを使って好きなところ(Cygwin 環境のルートディレクトリになるところ)
に展開してやれば OK。起動用のバッチファイルはついてこないので、
自分でなんとかしなくてはならない。B20.1 のやつをとっておいて、これを
書き換えるようにすればいいかもしれない。
ところで、この tar.gz アーカイブは、行末コード変換有効な状態で展開する
のが正しいのだろうか?それとも?
(2000.04.19 追記)
先日 Cygwin-1.1 が正式にリリースされた旨、cygnus のページにアナウンスが
あった…のですが、肝心の中身がプレリリース版からあまり変わっていないよう
な感じがします。それに、cygwin-ML をみてるとなんだかインストーラに関する
トラブルとかが出ている模様。インストールできないわけじゃないんだけどね…。
もうちっと待ってたほうがいいんですかね。と書きつつ、私は昨日ダウンロード
済ませていたりしますが。
(2000.05.12 追記)
Windows2000 だと、gdb がうごかねぇので別に用意されているバイナリに
差し替える。あと、dejagnu がおかしいような気がするんですけど…。
(2000.05.22 追記)
dejagnu (runtest) が腐っているのは expect コマンドが腐っているせい
らしい…。拾ってきて make してみるか?
- [ その他 ]
- 計画
- Cygwin の実行ファイルとか自分で make したアプリとかをまとめて CD-R に焼いて、「ハードディスクにインストールしなくても使える」ものを作っ
てみる。 (2000/03/30)
とりあえず実験的に、C:/cygnus/... 以下を CD-R に焼いて、それを使用するための バッチファイルやシェルスクリプトを書いてみる。使うことができるのは確認した。
ただし当然、/tmp とかはハードディスク上に作ることになる。あと、ホームを /usr/users ... におくようにしていた都合で、ハードディスクから
CD-R への シンボリックリンクを張ったりした。
docile-AtMark-docile.org