g++ バージョン 2.96 を使用してビルドされたライブラリ ファイルがあります。lib のソース コードは入手できず、元の開発者からのサポートもありません。
最新の g++ バージョン (4.x など) を使用してアプリケーションにリンクしたいと考えています。私が理解しているように、gcc veriosn 3.3 以降、名前マングリング スキームが変更されました。そのため、新しいリンカーは古い lib ファイルのシンボルを認識しません。
私はネットでいくつかの調査を行い、objcopy、objdump、c++filt、nm などのツールを調査し、lib ファイル内のシンボルを手動で見つけてデマングルしようとしましたが、役に立ちませんでした。
それで、新しいコンパイラを使用してリンクできるように、古いバイナリ lib ファイルを新しい名前マングリング スキームに変換する方法 (またはツール) はありますか?