= C++プログラムの作成、コンパイルと実行 = == 内容 == 簡単なプログラム("HelloWorld!"という文字列を画面に出力する)を作成して、それを題材にこのプログラムのソースコードをコンパイルして実行可能なファイル形式に変換する(コンパイル処理)。その後、実行可能形式のファイルを実行する。ソースコードの開発からプログラムの実行に至るまでの作業はLinux環境下で行うものとする。 まずは、この例ではプログラムの記述は全て一つのファイルでなされているものとする。 その後、プログラム全体のコードが複数のファイルに分割してある場合の手順を示す。(予定) 以後、他のプログラムについてもソースコードが異なるだけで、コンパイル・実行の手順は同じである。 == プログラムの作成 == プログラムはテキスト・ファイルに記述していくため、テキスト・エディター(例えばemacs)を用いて以下の5行を入力する。 Linux上での開発環境を準備するという意味でコマンドを入力するためのターミナルを開く 1. ターミナルを開く "Application" -> "System Tools" -> "Terminal"を選択 2. emacsによりHelloWorld.cxxという名前のファイルを開く * ターミナル上で{{{> emacs HelloWorld.cxx &}}} 3. emacs上で以下の5行を入力する 4. ファイルを保存する * "File" -> "Save"を選択 * または"Ctrl-x Ctrl-s"と入力("Ctrl"キーを押しながら"x"キーを押して、次に"Ctrl"キーを押しながら"s"キーを押す) {{{ #include int main(int argc, char* argv[]) { std::cout << "Hello, World!" << std::endl; return 0; } }}} {{attachment:OpenTerminal.png|Open Terminal|width=400px}} == プログラムのコンパイル == ターミナルに戻り、次のコマンドを実行する。 {{{> g++ -o HelloWorld.exe HelloWorld.cxx}}} !HelloWorld.cxxというファイルに記述されたプログラムのソースコードをコンパイルするのに、g++というプログラム(コンパイラ)を用いる。 このプログラムは {{{ g++ <オプション(任意)> <ソースファイルへのパス> }}} という形で使う。これはLinuxのコマンドラインでよくみられる、プログラムの実行方法である。<ソースファイルへのパス>の部分は必須である。一方、<オプション>の部分は、コンパイラに伝えたい情報を必要に応じて与える。上の例では"-o"オプションを使っている。これは出力ファイル名(Output file)を指定するためのものでこの例ではコンパイルした実行可能形式のプログラムを!HelloWorld.exeという名前で作成することをコンパイラに指示している。 == プログラムの実行 == ターミナル上で次のコマンドを実行する。 {{{> ./HelloWorld.exe}}} すると画面上に {{{Hello, World!}}} と表示されるはずである。図参照。 {{attachment:Programming.png|Programming|width=600px}}