windows cygwinでobject-cを使う
拡張子はxxx.mで終了
コンパイルは
$ gcc -o hello-objc hello-objc.m -lobjc
cygwinでbuildするとcygwin1.dllまでリンクされてしまう
こいつがあるとGPLに感染するので注意する。(GPLを使ったものはソース公開義務がある)
$ objdump.exe -p hello-objc.exe | grep "DLL Name"
DLL Name: cygwin1.dll
DLL Name: cyggcc_s-1.dll
DLL Name: KERNEL32.dll
こいつを避けるには gcc3までなら-mno-cygwinをつければよかったが
gcc4からはなくなっている。一番らくな解決方法はgcc-3でビルドする。
$ gcc-3 -mno-cygwin -o hello-objc hello-objc.m -lobjc
$ objdump.exe -p hello-objc.exe | grep "DLL Name"
DLL Name: KERNEL32.dll
DLL Name: msvcrt.dll