次の 2 つの方法でライブラリ (共有と静的の両方) を gcc/g++ に指定することに実質的な違いがあるかどうかを理解したいと思います (CC は g++ または gcc にすることができます)。
CC -o output_executable /path/to/my/libstatic.a /path/to/my/libshared.so source1.cpp source2.cpp ... sourceN.cpp
対
CC -o output_executable -L/path/to/my/libs -lstatic -lshared source1.cpp source2.cpp ... sourceN.cpp
完全に指定されたライブラリ名を直接渡すと、静的バージョンまたは動的バージョンを選択する際の制御が強化されるという大きな違いしかわかりませんが、実行可能ファイルのビルド方法または実行時に動作しますよね?
アンドレア。