mintty
以下は、minttyをログインシェルで起動させるための設定について触れている記事。
mintty起動してもbashが.bash_profile読んでくれなくて何で!?ってなって調べた結果。
-
MSYS+mintty:Nyabooのあれこれ (ほぼモン狩日記):So-netブログ
/bin/bash --login
のコマンドを起動させる方法。
-
無学浅識: MinTTY
-
オプション指定する方法。
-
Cygwin/minttyからscreenを起動する方法 - TOBY SOFT wiki
mintty起動時にscreenも起動する方法も。
マウント
再インストールしてユーザーIDが変わったせいなのか、マウントがうまくできなくなった。
cygwin関連のディレクトリのACL設定などの調査結果。
-
Cygwin for Professionals
rebase?
fork: Resource temporarily unavailable
エラーが出て困った。
-
Cygwinのある生活
rebaseall -v
とかでインストールされた、*.dll に対して rebase 処理、内部のアドレスを置き換える処理が行われ、再構築してくれる。
とのこと。ただし、先のrebaseallはcygwin起動してない状態でash経由という条件あり。
/etc/passwd,/etc/group
再インストールして、ホームディレクトリがおかしいとか、エラーが出力されるとか。
/etc/passwd,/etc/groupを再構築すると直った。
$ mkpasswd -l > /etc/passwd
$ mkgroup -l > /etc/group
-
Cygwin 環境の構築:環境設定
Cygwin 1.7 でscreenとかvimで:shell起動したときのシェルでaliasが設定されなくて、地味に不便だった。原因は起動されるシェルがbashじゃなくてshだったから。環境変数$BASHの値を確認すると alias 設定されない場合 /bin/sh とか /usr/bin/sh になってた。man screenを見てみると $SHELL で指定されているシェルを起動するようなこと書いてあるんだけどそれも効いてないような気がする。地味に不便だったのをしばらくほったらかしにしてたんだけど、いいかげん我慢できなくなってきた。そこで、screen だけ ~/.screenrc に以下を追記することで回避してみた。
shell /bin/bash
~/.vimrc には以下を
:set shell=/bin/bash
最初なんでaliasだけ設定されないかわからなった。~/.bashrc とか ~/.bash_profile がちゃんと読み込まれてないんじゃないかとか、その記述にエラーあるんじゃないかとか調べたけどおかしそうなところはなかった。また、環境変数はちゃんと~/.bashrcで指定したものが設定されていた。原因わかってみればなんのことはない親プロセスの環境変数を引き継いでいただけだろうけれど。Cygwinじゃない環境で screen 起動してみたらちゃんとシェルは$SHELL の bash になってたし、alias も設定されていた。恐らく alias 設定されないの Cygwin だけじゃないかと思う
% objdump -p hello.exe |grep "DLL Name"
DLL Name: cygwin1.dll
DLL Name: KERNEL32.dll
% objdump -p hello.exe | grep "DLL Name"
DLL Name: msvcrt.dll
DLL Name: KERNEL32.dll
でcygwin1.dllかmsvcrt.dllがリンクされているかで区別する。
- ■Cygwinとmingwを区別する方法。
-
Cygwin遅いけどrootlessでX使いたい場合にウィンドウマネージャが欲しい。
そこで、以下の情報を見つけたのでやってみる。
↓cygwin portsにmetacityが入ってる。
ftp://sunsite.dk/projects/cygwinports/portslist.txt
セットアップ時のダウンロード先を以下のURLにすればダウンロードできる。
ftp://sunsite.dk/projects/cygwinports
http://cygwinports.dotsrc.org/
↑cygwin ports projetのサイト
http://www.cygwin.com/
にもcygwin Portsのニュースがでてる。