【お知らせ】プログラミング記事の投稿はQiitaに移行しました。

クロスコンパイラ

PE勉強会が落ち着いたらELFを取り上げるのも面白いかなと思って、MSYSでELFが扱えるか確認してみました。そのまま何かのOSで動かせるバイナリを出力した方がいじりやすいため、NetBSD 5.1のクロスコンパイラを作ってみました。build.shを使わずにbinutilsgccを--target=i686-netbsdelfで直接ビルドしています。(i686-netbsdとしてビルドするとa.outになります)

/usr/localに展開すれば、i686-netbsdelf-gccとして呼び出せるようになります。

$ mkdir /usr/local
$ tar xvJf netbsd-5.1-i686-gcc.tar.xz -C /usr/local
$ i686-netbsdelf-gcc hello.c