4

私はいくつかの「フリースタンディング」( OSなしで直接実行されるプログラムの名前は何ですか? )コードを書こうとしていますが、OS-Xリンカがリンカスクリプトまたはフラットバイナリ出力をサポートしていないことを見て、私はそれを想定しています代わりに GNU リンカーを使用することをお勧めします。

GCC を使わずに GNU リンカだけをインストール/コンパイルする方法はありますか?

コンパイルされた GNU リンカは、OS-X バージョンの GAS アセンブラによって出力されたオブジェクト ファイルを理解できますか?

リンカーをコンパイルできない場合、GCC をコンパイルする最良の方法は何ですか?

注: パッケージ システムを使用するのではなく、コンパイルしたい。

4

1 に答える 1

2

私の実験的なペット カーネル プロジェクトでは、この目的のために MacPortsのcross/i386-elf-gccとポートを使用しています。cross/i386-elf-binutilsMakefile

CC=             i386-elf-gcc-4.3.2
AS=             i386-elf-as
LD=             i386-elf-ld

異なるツールチェーンのコンポーネントを混ぜ合わせようとさえ試みたことはありません。 何とか動作させることができるかもしれませんが、クロスコンパイルツールの「クリーンな」セットをインストールして、それらが互いにうまく動作することを合理的に確信できるのであれば、面倒なことをする価値はないようです。

于 2012-04-23T23:27:04.380 に答える