私の .exe プロジェクトは、外部の静的ライブラリ A.lib と B.lib に依存しています。
問題: ライブラリ B も内部的にライブラリ A を使用し、そのシンボルをエクスポートします。しかし、使用されている A のバージョンは A.lib とは異なり、私のアプリと互換性がありません。
アプリケーションを A.lib と B.lib の両方にリンクすると、B.lib に含まれる A シンボルが A.lib の適切なシンボルを隠します。リンクは成功しますが、アプリが正しく動作しません。
B.lib のすべての使用を別の静的ライブラリ C.lib に分解しても効果はありません。C.lib は依然として B.lib からすべてのシンボルをエクスポートします。
これは、次の回避策なしで解決できますか?
動的リンク。
私のバージョンの A.lib で B を再構築します。(B のソースにアクセスできます。)
これにより、B で未知の副作用が発生する可能性があります。