私はOS開発に不慣れで、カーネルをELFバイナリにコンパイルしたいと思っています。アセンブリで記述されたローダーがあります(GAS構文)。Mac OS X 10.7でas
(Apple Incバージョンcctools-822、GNUアセンブラバージョン1.38)を使用してコンパイルします。
% as -arch i386 src/loader/x86.S -o src/loader/x86.o
しかし、% file src/loader/x86.o
それはMach-Oファイルだと教えてくれます。
% file src/loader/x86.o
src/loader/x86.o: Mach-O object i386
のマニュアルページを読みましたas
が、Mach-OオブジェクトではなくELFオブジェクトを作成する方法がわかりません。グーグルも何の役にも立ちませんでした。