Linuxでのリンクについて次の質問があります。
Qtを使用するクラスFooがあるとします。このクラスを作成するには、qmakeを使用してMakefileを生成する必要があります。
後で、共有ライブラリであるPerlモジュールにこのクラスFooを使用したいと思います。ただし、それをビルドするには、PerlのMakeMakerを使用して独自のMakefileを生成する必要があります。
私が今やっている方法は、クラスFooを静的ライブラリとしてビルドし、Perlモジュールの共有ライブラリをビルドするときに、Fooの静的ライブラリに対してリンクしていることです。
問題は、Perlモジュールの共有ライブラリを構築するときに、Fooの静的ライブラリがリンクされているすべてのQtライブラリに対してリンクする必要があることです。
したがって、問題は次のとおりです。
このアプローチは意味がありますか?!
Perlモジュールの共有ライブラリを構築するときにすべての依存関係を指定する必要がない方法でFooの静的ライブラリを構築することは可能ですか?(これらすべての依存関係をモジュールのMakefileに追加するのはやや難しいため)
Fooのライブラリが静的ではなく共有されている場合、それは何か違いがありますか?