gcc -sharedがOSXでは使えないのでgcc -bundleで
完全に自分用メモです。
gcc libcsv.c -c -o libcsv.o gcc -shared libcsv.o -o libcsv.so i686-apple-darwin8-gcc-4.0.1: unrecognized option '-shared'
時たま、この問題にぶつかる。
shared libraryは拡張子が".so"。
OSXはNextStepの流れから(?)、共有ライブラリが.bundle(例外もありそう)となっていて、gcc -sharedがoptionとして存在してない。
libcsvでこの問題に出会ったので、以下のようにすると解決した。
Makefileの
libcsv.so: libcsv.o $(CC) -shared $< -o $@
を
libcsv.so: libcsv.o $(CC) -bundle $< -o $@
とするとうまくmakeできる。
[mako@Akari]make gcc -bundle libcsv.o -o libcsv.so ar -rc libcsv.a libcsv.o ar -s libcsv.a
「"-shared" "-bundle" osx」当たりで検索するとでてくる。