cygwin上でwin32APIを利用する(mingw でのコンパイル)

win32APIをプログラムで使いたい場合、
mingwを使用する必要がある。


mingwwindowsで最低限のunix機能を
使えるようにしたもの、大雑把にいえば、
gccwindowsで使えるようにしたもの。


cygwingccより早いそうだ。


cygwinでのコンパイル方法-mno-cygwin
オプションをつければ良い。

gcc -mno-cygwin test.c

どのライブラリを
使用しているかは以下のように確かめられる。

gcc test.c -o a_cygwin.out
gcc test.c -mno-cygwin a_mingw.out

コンパイルし、

ライブラリの依存関係を

objdump -p

コマンドで調べる。

cygwingccコンパイルしたものは、

objdump -p a_cygwin.out

とすると、

DLL名: cygwin1.dll 

と表示される。
mingwgccコンパイルしたものは、

objdump -p a_mingw.out

DLL名: msvcrt.dll 

など表示される。