リンカ・ローダ実践開発テクニック

あなたは 人目のお客様です.

本ページは「リンカ・ローダ実践開発テクニック」のサポートページです

CQ出版社のInterface誌で2004年〜2005年にかけて連載していた 「リンカを100%使いこなそう!」 が書籍になったものです.連載中の記事については大幅に加筆修正し, さらに後半に書き下ろしで章を追加してあります.(8〜11章)

リンカ・ローダに関しては,長いことオーム社の「Linkers&Loaders」しか書籍が 無く,インターネット上でも情報は少なかったため非常に勉強しづらい分野だった.

そしてLinkers&Loadersは良書でぼくもさんざん勉強させてもらったのだけど, 理論的なことを広く浅く説明してある本のため,あまり実践的な内容ではない. このため実際にプログラムを書こうとすると,他にもいろいろ調べなければ ならなくなったりする.

今回出版された書籍は,内容はかなり実践的だ. というのは,ぼくも理論的なことがちょっと不足していたために, ひたすら指向錯誤をして,実際に試してみながら執筆したからだ.

なので,組み込みやOS開発をやっていて実際にリンカ・スクリプトを書くとか, ELFローダを作成する必要があるとか,そういった人には重宝されるのでは ないだろうか.

もちろん,単に興味があるだけというひとも大歓迎だ.最近はバイナリハックとかが 流行りだし,こういう低層の面白さがもっと広まるといいなーと漠然と思う.

書籍インタビュー

書籍出版インタビュー記事が掲載されています.

書籍『リンカ・ローダ実践開発テクニック』発売記念インタビュー

書籍中のソースコード

書籍中で紹介されているソースコードと,〆切の問題で書籍中に収録できなかった コラムが以下からダウンロードできます. 内容については添付のREADMEを参照してください.

Linuxでのサンプルプログラムの利用について

書籍中のサンプルプログラムはFreeBSDでの動作を確認してありますが, 数箇所修正するだけで Linux でも動作するものが多いようです.

Linux 上でコンパイルするための差分吸収のヘッダファイルを作成しました. Linux 上で動作させてみたい場合,以下を試してみてください.

  1. 以下のヘッダファイル「linuxelf.h」を先頭でインクルードする.
    linuxelf.h
  2. Makefile中で,「gcc ... -T (リンカスクリプト)」のようにして リンカスクリプトを指定している部分を,以下のように -Wl オプションを 利用するように修正する.
    gcc ... -Wl,"-T (リンカスクリプト)"

書籍に収録できなかったコラム

以下は〆切の問題で,書籍中に収録できなかった追加コラムです.

印刷して,指定のページにはさんでおくといいかもしれません.


メールは kozos(アットマーク)kozos.jp まで