For faster navigation, this Iframe is preloading the Wikiwand page for GNU Binutils.

GNU Binutils

GNU Binutils
開発元 GNUプロジェクト
最新版
2.43.1[1] ウィキデータを編集 / 17 8月 2024
リポジトリ ウィキデータを編集
プログラミング
言語
C
サポート状況 開発中
ライセンス GNU General Public License
公式サイト www.gnu.org/s/binutils/
テンプレートを表示

GNU Binutilsまたはbinutilsは、さまざまなオブジェクトフォーマットを含むオブジェクトファイルを扱うためのプログラミングツールである。わかりやすくいうと、GNUが提供しているツールのうち、バイナリのプログラミングを実装するためのツールであり[2]、そのためクロスアセンブラとして活用できる。現在のバージョンは、シグナスソリューションズレッドハットに買収された)によってBFDライブラリを使用して書かれた。binutilsの典型的な使われ方は、GCCmakeGDBなどの補助である。

コマンド

[編集]

binutilsは以下のコマンドを含む:

  • addr2line - プログラム内のアドレスをファイル名と行番号に変換する
  • ar - アーカイブの作成、変更、および展開
  • as - GNUアセンブラ
  • c++filt - C++シンボルのデマングルを行う
  • dwp - DWARF パッケージングユーティリティ
  • elfedit - ELFファイルのヘッダとプログラムプロパティの編集
  • gold - ELFファイル用代替リンカ
  • gprof - C、Pascal、Fortran77プログラムの実行プロファイルを取得
  • gprofng - Gprof Next Generation; パフォーマンスデータを収集・分析するためのGPROFNGツール群のドライバ
    • gp-archive - 収集データのアーカイブ
    • gp-collect-app - ターゲット・アプリケーションのパフォーマンス・データを収集
    • gp-display-html - プロファイルを参照するためのHTMLベースのディレクトリ構造を生成
    • gp-display-src - ターゲット・オブジェクトのディスアセンブルとともにソース・コードを表示
    • gp-display-text - パフォーマンスデータをプレーンテキストで表示
  • ld - リンカ
  • nm - オブジェクトファイルに含まれるシンボル(クラス、関数など)を表示する
  • objcopy - オブジェクトファイルをコピーする、オブジェクトフォーマットの変換を行う
  • objdump - オブジェクトファイルのダンプ情報を表示する
  • ranlib - アーカイブのインデックスを作成する
  • readelf - ELFファイルの中身を表示する
  • size - セクションの大きさとその合計をリストする
  • strings - ファイルに含まれる印刷可能な文字の並びを表示
  • strip - オブジェクトファイル中のシンボルを除去

元々binutilsのパッケージは少数のユーティリティから構成されていたが、後に関連性の高さからリンカとアセンブラ(2.5以降)も含まれるようになった。

BFDとlibopcodes

[編集]

個々のbinutilsコマンドは単純な機能しかもたない。これらを組み合わせカプセル化したものとして、BFD (Binary File Descriptor) やlibopcodesライブラリがある。

最初のBFDバージョンは、David Henkel-WallaceとSteve Chamberlainによって書かれた。過去には、Ken RaeburnとIan Lance Taylorがメンテナンスを行っていた。2005年以降はNick Cliftonがメンテナンスしている。

参考文献など

[編集]
  1. ^ GNU Binutils 2.43.1 released” (17 8月 2024). 18 8月 2024閲覧。
  2. ^ 伊藤剛浩・川田裕貴『独自CPUで学ぶコンピュータの仕組み』、2016年3月20日 第1版 第1刷 発行、237ページ

外部リンク

[編集]
{{bottomLinkPreText}} {{bottomLinkText}}
GNU Binutils
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?