[コンピュータ][gcc][sh3]今日もgcc

gcc-3.4.3とbinutils-2.8.1の組み合わせはあまりにも次元が違いすぎて、組み合わせるのはそもそも無理みたいです。gccのほうが見た事もない擬似命令とかを次々吐き出してきて、そのたびにgasに手を入れるのに疲れてしまった。
というわけで今度は新しいbinutilsでターゲットが作成できるようにアプローチを変えてみる戦術に変更。とりあえずbinutils-2.8.1ではOK、binutils-2.9ではダメと分かっているので、そこから地道に解決方法を模索することにします。
で、binutil-2.9でやってみるとリンクが出来ない。binutils-2.8.1のldを使用しても同じ。未定義ラベルの一部がどうしても解決できないらしい。古いldでも解決できないということは、gasの吐いたオブジェクトファイルか、arの作ったアーカイブファイルに問題がある事になる。

  1. binutils-2.8.1とbinutils-2.9のarやbldを比較する。
  2. binutils-2.8.1とbinutils-2.9のアーカイブファイルを比較する。

のどちらから攻めようか。
ああ、ld に「-m shl」の呪文を唱える事も忘れちゃいけない。