premake5 を使用して、複数のプラットフォームで複雑なアプリケーションを構築しています。私のアプリケーションは、静的および共有/動的外部ライブラリの両方にリンクしています。この場合、premake で生成された「gmake」make ファイルを壊す、ビルド チェーンの重要な依存関係があるようです。
適例:
premake 'link' ステートメントで共有ライブラリと静的ライブラリを混在させると、GCC は混乱し、共有ライブラリ参照が実際には静的ライブラリであると想定するようです。それらが見つからない場合、リンク段階は失敗します。これは通常、共有ライブラリの前に「-Bdynamic」を付けることで処理されます。残念ながら、premake5 に外部リンク ライブラリが静的か動的かを伝える方法がないため、make ファイルを手動で修正する必要があり、ビルド ユーティリティの目的が無効になります。
これは一種のショーストッパーです。"-Bdynamic" を linkoptions にそのまま入力することはできないと思います。これは、共有ライブラリのリストが後に続く必要があるためです。