質問: 1でリビルドし、libstdc ++バージョン6とリンクします。これは、C ++標準ライブラリシンボルの未定義のシンボルエラーがいくつか発生して失敗します。 * 上記と同じですが、libstdc ++ 5の共有ライブラリにリンクされていますが、これはリンカの問題を解決しますが、実行時に2つのバージョンがレガシーライブラリ内で混在してクラッシュする原因になります。 このページは次のとおりです: http://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html これは、ライブラリ間のさまざまな依存関係を満たすためにアプリケーションでC ++ ABIのバージョンを混在させることが可能であることを示すようです。しかし、私は何かが欠けていない限り、ここでうまくいくとは思われません。 何か案は?
回答: はい、回避策は次のとおりです。 * 古いC ++ライブラリに "C"インタフェースを作成し、3.2.3でコンパイルして動作するようにします。 * 新しいコンパイラでCインタフェースを使用できるようになりました。 C ++の「ラッパー」コードをCライブラリの周りに書くことができますので、C ++として使用しますが、このコードは新しいコンパイラでビルドされます。