macOSのシステムコールメモ

macOSのシステムコールメモ macOSのシステムコール番号は https://opensource.apple.com/source/xnu/xnu-4903.221.2/bsd/kern/syscalls.master.auto.html に書かれているが,64-bitではこの通りにsyscallしてもbus error となってしまう。 実際には,システ…

macOSでのクロスコンパイラのビルド方法

macOSでのクロスコンパイラのビルド方法について書いていく。 gcc この記事の執筆時点での最新バージョンのgcc9.1.0をビルドするが,よほど古くない限りは同じ方法でできるはずだ。 gcc-9.1.0のダウンロードと解凍: $ wget http://ftp.tsukuba.wide.ad.jp/so…

macOSにてgccのクロスコンパイラのビルドが失敗する

UEFIを試してみるため,MacBookProにgccのmingw-w64版のビルドをしようとしたところ,make install-gcc時に,以下のエラーが発生した。 ld: warning: ignoring file ../libiberty/libiberty.a, file was built for archive which is not the architecture be…

Mach-Oの構造メモ

Mach-Oの情報をどこかに書かないと忘れてしまいそうだったため。 Mach-OのリファレンスはAppleの開発者用サイトから削除されてしまったようだが,githubにミラーがある。 Mirror of OS X ABI Mach-O File Format Reference Mach-Oのリファレンスは誤記がいく…