libtoolでshared libraryを作る際の拡張子を指定する
Wiresharkのプラグイン等は,OSX環境等でも'.so'にしてくれないと読み込んでくれないので,どうすれば拡張子を指定できるのか調べた.
-shrext
libtoolには-shrextというオプションが用意されているのでこれを使う方法.Makefile.am等で,LDFLAGSに書けば良い.
hogehoge_la_LDFLAGS = -shrext '.so'
-module
libtoolには-moduleというオプションもある.これは,コンパイル時にリンクされるライブラリではなく,実行後にdlopen(3)でリンクされるプラグイン用等のshared libraryを作る際に指定するオプションである.これを指定すると,拡張子も'.so'にしてくれるので,今回のケースではこちらを使う.
hogehoge_la_LDFLAGS = -module