読者です 読者をやめる 読者になる 読者になる

異なる環境でコンパイル可能な共有ライブラリのソースとか

libhoge.soな共有ライブラリ作るときは、リンカに渡すオプションはふつう-sharedなんだけど、MacOS付属のgccだと-sharedオプションは使えなくて*1、-dynamiclibオプションをつかうとdlopenとかで開ける共有ライブラリが作成できる。でもautomake/autoconf使ってるとMakefile.amに

noinst_LIBRARIES=libhoge.so

とか

noinst_LIBRARIES=libhoge.dylib

って書けない(なんか怒られる)し、-sharedなオプションもリンカに指定できない(arしか使ってくれない)。この辺りってどうやったら解決できるんでしょか。
libhoge_a_AR=ほげほげってやるとリンカ(のようなもの)を指定できるみたいなんだけど、それもなんか怒られた。うーむ。

noinst_LTLIBRARIES=libhoge.la

という感じでlibtool使えばできそうな気もするけど、使い方見当もつかないし、そこまでgnuどっぷりなのもヤダ…。

*1:man gccしたら書いてある