2008/02/06

cygwin1.dll

普段、CのプログラムはCygwinのgccでコンパイルしていた。
出来た実行ファイルもCygwin上で走らせていたが、ふとアイコンをダブルクリックしてみて、実行できないことに気づいた。
「cygwin1.dllが見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールし直すとこの問題は解決される場合があります。」
という表示が出る。
ググってみると、こんなページを見つけた。

$ objdump -p hoge.exe | grep -i '\.dll'

上のように打ってみて、cygwin1.dllが必要になっていることが確認できた。
これを回避するには、gccの引数として、-mno-cygwinをつければいいということなのでやってみると、あっさり解決した。
とりあえず.bashrcに以下の行を追加しておいた。

alias gcc='gcc -mno-cygwin'

0 件のコメント: