問題タブ [readelf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
425 参照

c++ - elf ファイルのセクション ヘッダーからすべてのフィールドを抽出するにはどうすればよいですか?

したがって、ここの Elf チュートリアルを使用して sh_name を取得できました: http://wiki.osdev.org/ELF_Tutorialおよびこの質問:セクションヘッダー elf ファイルで sh_name メンバーを取得しますが、同じ方法を使用して残りを取得する場合セクション ヘッダー内のフィールドのうち、readelf -S分析しているオブジェクト ファイルを呼び出したときと同じ出力が得られません。次のキャスト文字列を出力しています。

そして、私がそうするとき、私は何も得ていません。キャスティングの問題でしょうか?代わりに int または同様のものとしてキャストすることになっていますか? sh_strtabセクションヘッダーに関連付けられた文字列テーブルであると想定したため、文字列形式になると思いました。

0 投票する
1 に答える
340 参照

c - ELF ファイルの .dynamic セクションのエントリ数を調べる方法は?

readelf ユーティリティを使用せずに、ELF ファイルの .dynamic セクションのエントリ数を特定する方法はありますか? 関数を使用して .dynamic セクションからデータを出力しようとしていgelf_getdyn()ますが、このセクションのエントリ数をプログラムで見つける方法がわかりません。役立つ (のソース コードが見つからないreadelf) ヘルプまたは Web ページは、非常にありがたいものです。

0 投票する
1 に答える
174 参照

c - 妖精。すでにリンクされている DSO のエクスポートされたシンボルを非表示にする

私はすでにコンパイル済み/リンク済みの DSO ファイルを持っています。これは、実際に非表示にする必要があるいくつかの関数をエクスポートします。コードをそのライブラリにリンクしようとすると、自分のシンボルではなく不要なシンボルが検出されます。ソース コードにアクセスできないため、バイナリを再構築して、不要なものに適切な可視性属性を使用することができません。

ここで唯一の解決策が見えます-不要なシンボルフォームの可視性GLOBALHIDDEN直接バイナリに変更します。そのような変更のための明らかなツールは ですobjcopyが、問題は、objcopy動的シンボル テーブルを変更するオプションがなく、通常のシンボル テーブルしか処理できないことです。

ダイナミック シンボル テーブルのシンボルの可視性を変更できるツールを知っている人はいますか?