build
2010年05月14日
Linuxカーネルをデバッガで追っていくときに、コンパイラの最適化のためにアドレスとソースの対応づけや変数のメモリ割り当ての情報が失われてしまっていたり、インライン展開されてしまっていたりして、意図したようにデバッガが動かないことがあります。
こんなときはコンパイラの最適化を抑止する-O0(大文字のオーの後に数字のゼロ)のコンパイルオプションをつければよいのですが、全てのソースを-O0でコンパイルすると動かなくなってしまうこともあります。
2010年02月25日
QEMUの上でDebianなどが動いていると、apt-get で簡単にコンパイラなどもインストールすることができます。しかし、そこで実際にビルドを行うととんでもなく時間がかかります。一晩かけても終わらないこともあります。
QEMUには今まで紹介してきたような、システム全体をエミュレートするものの他に、Linuxのユーザーモードのみをエミュレートするものがあります。今回はユーザーモードエミュレーションを紹介します。
ユーザーモードエミュレーションを利用することでビルドにかかる時間を1/10に短縮することができました。