クロスコンパイラ(英: cross compiler)は、コンパイラが動作している環境以外のプラットフォーム向けに実行ファイルを生成する機能を持つコンパイラである[1]。クロスコンパイラは主に組み込みシステム向けのコンパイラや、マルチプラットフォーム対応のコンパイラとして使われる。 必要最小限のメモリしか搭載していないことが多いマイクロコントローラを使った組み込みシステムや、セキュリティのためアプリケーションソフトウェアのインストールや動作形態に制限のあるモバイルOS環境など、実行ファイルを動作させたいプラットフォームがコンパイル環境としては不適切な場合にはクロスコンパイラは必須である。 システムが複数のプラットフォームをサポートする場合に、準仮想化のためのツールとしてクロスコンパイラを利用することが一般化しつつある。 クロスコンパイラの基本的使用法は、ビルド環境をターゲット環境から分離す
● [Thoughts] プログラマの教養は manual pages に宿る (その5) 今回は、いよいよ GNU C コンパイラの登場です。一般書ではほとんど触れられることのない、インクルード処理の意義を再考してみましょう。 はじまりは hello.c 最初のソースファイルは、意図的に #include <stdio.h> を削除した hello1.c です。 int main() { printf("Hello, world!\n"); return 123; } main 関数の中に、printf 関数および return 文を記述しただけの小さなプログラムです。通常は return 文にゼロが添えられていますが、ステータスコードの意味を強調するために 123 を指定しています(UNIX の慣習としてプロセスは正常終了の時0、異常終了の時1を返す)。 main 関数の戻り値は、プロ
標準的なターゲットファイル更新の手法の中にはかなり頻繁に使うものもあります。例えば、オブジェクトファイルを作成するにはccというCコンパイラを使ってCソースファイルから作るという方法が習慣的なものの一つです。 習慣的な技術の利用方法をわざわざ詳細に指定しなくてもいいようにmakeに伝えてくれるものが暗黙のルールです。例えばCコンパイル作業に働く暗黙のルールがあります。ファイル名でどの暗黙ルールが実行されるのかが決定されるのです。例えばCのコンパイル作業では典型的に`.c'ファイルを受け取り`.o'ファイルを作成します。だからこの二つで終わるファイル名の組を見つけるとmakeはCコンパイルを行う暗黙ルールを適用します。 暗黙ルールの連鎖が次々に適用されることもあります。例えば`.o'ファイルを更新するのに`.y'ファイルを使う場合それを`.c'のつもりで更新します。 これについては暗黙ルール
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く