.libファイルを検査するためのツールは?
質問
ドキュメントが十分でないソフトウェアを評価しています。サンプルプロジェクトをビルドすると、次のようなリンカーエラーが発生します。
error LNK2019: 未解決の外部シンボル
このアプリには lib ファイルがあまりないので、試行錯誤でこの問題を解決することができますが、もっと多くの エレガント な方法があることを知っています。
javaの世界では、私は grep FOO *.jar を実行して jar を探しますが、私は C++ のアナログを探しています。私はVisual Studio 2005でC++のコードを使用して作業しています。
私は、/LIST オプション付きの lib.exe ユーティリティが情報を取得できると考えていますが、今のところ失敗しています。これはただ印刷されるだけです。
マイクロソフト (R) ライブラリ マネージャー バージョン 8.00.50727.762 Copyright (C) Microsoft Corporation. すべての権利を保有します。 granite50.dll granite50.dll granite50.dll granite50.dll ...
何か提案はありますか?
どのように解決するのですか?
まず最初に、どのタイプのライブラリなのかを知る必要があります。ライブラリには、単に DLL へのリンクを含むもの (つまり、インポート ライブラリ) と、実行イメージの一部となるコード オブジェクト (つまり、静的ライブラリ) があります。出力の様子から、あなたは DLL のインポート ライブラリを探していたようです。
次に、適切なツールを使用したいと思います。Lib.exe は、ライブラリやその他からオブジェクト ファイルを抽出するために使用されます。これは、Java 用の jar ユーティリティとほとんど同じです。Microsoft は、ライブラリから情報をダンプする dumpbin.exe を提供しています。なるほど LarryF がすでに言及していますね。
インポートライブラリについては
dumpbin.exe -headers foo.lib
を実行し、それを出力ファイルにリダイレクトします。出力には、関連するDLLがエクスポートする各シンボルのスニペットが含まれます。で始まる行を検索してください。
" Symbol name :"
. 完全に一致させたい場合は、"シンボル名" の前後に2つのスペースがあることに注意してください。また、出力を
findstr
を通してシンボルのリストを生成し、それをテキストファイルにリダイレクトすることもできます。
dumpbin.exe -headers foo.lib | findstr /c:" Symbol name :" > foo-exports.txt
もう一つの方法は、関連する DLL を
depends.exe
.
関連
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
[解決済み] システムトレイにあるvshub.exeとは何ですか?
-
[解決済み] LINK : fatal error LNK1104: cannot open file 'D:\...MyProj.exe'.
-
[解決済み] Visual Studio 2010でテキストカーソル/キャレットを変更する
-
[解決済み] Visual Studio Community Edition 2017のダウンロード方法(2019は不可)
-
[解決済み] C#の正しいバージョン番号を教えてください。
-
[解決済み] Visual Studio の .suo と .user ファイルをソースコントロールに追加する必要がありますか?
-
[解決済み] Visual Studioからプロジェクトフォルダの名前を変更するにはどうすればよいですか?
-
[解決済み] "Entire Solution "の検索が効かなくなる。
-
[解決済み】Visual Studioのエディタにガイドラインを追加する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Visual Studioで不整合な行末を正規化するとはどういう意味ですか?
-
[解決済み] 仮想ディレクトリの作成に失敗し、エラーが発生しました。
-
[解決済み] .vsmdiは何のためにあるのですか?また、ソース管理は必要ですか?
-
[解決済み] objフォルダとbinフォルダ(Visual Studioで作成)は何に使うのですか?
-
[解決済み] Visual Studioで、既存のディレクトリツリーをプロジェクトに追加するにはどうすればよいですか?
-
[解決済み] Visual Studioソリューションのコード行数はどのように数えるのですか?
-
[解決済み] Visual Studioで "stdafx.h "は何に使うのですか?
-
[解決済み] Visual Studioで2つのプロジェクトを同時に実行する
-
[解決済み】Visual Studioのエディタにガイドラインを追加する
-
[解決済み】Windowsのライブラリ(*.lib)の中身を確認する方法)