プログラム作成から実行までの流れ

この授業では、Cプログラムのコンパイルと実行はLinuxで行います。

でも、Cプログラムを書くのはLinuxでもWindowsでも構いません。

家でも勉強できるように、自分のパソコンのWindowsでプログラムを作成できるようにしておくことをおすすめします。

総合情報センター実習室のLinuxで作成して実行する

プログラムの作成には、Vim, Emacs, Geditのいずれかを使用します。 C言語の構文を理解して色をつけてくれるものがいいでしょう。

プログラムを作成したら、ターミナル上でgccコマンドを使用してプログラムをコンパイルし、実行します。

総合情報センター実習室のWindowsで作成してLinuxで実行する

プログラムの作成には、TeraPadというエディタを使用します。

プログラムを作成したら、WinSCPというファイル転送プログラムを使用して、作成したプログラムをLinuxに転送します。

プログラムを転送したら、PuTTYというSSHクライアントを使用して、Linuxサーバー luna.isc.chubu.ac.jp にログインします。

ログインしたら、PuTTYを通したLinuxの上でgccコマンドを使ってプログラムをコンパイルし、実行します。

自分のパソコンのWindowsで作成して総合情報センターのLinuxで実行する

総合情報センターのWindowsと同じソフトを自分のパソコンのWindowsにもインストールします。

TeraPad

TeraPadは以下のページからダウンロードできます。

インストーラー付きのものをダウンロードし、ダウンロードしたファイルをダブル・クリックしてインストールします。

WinSCP

WinSCPは以下のページからダウンロードできます。

Installation packageをダウンロードし、ダウンロードしたファイルをだぶる・クリックしてインストールします。 言語は「日本語」を選択します。

PuTTY

PuTTYを日本語化したICE IV版のPuTTY PRIVATE PATCHESが以下のページからダウンロードできます。

一番新しい日付のものをダウンロードし、ダウンロードしたファイルを右クリックして「全て展開...」を選択し、圧縮されているファイルを展開します。

C:¥Program Filesフォルダーの中に、PuTTYという名前のフォルダーを新規に作成します。

64ビット版Windows(C:¥Program Files(x86)というフォルダーが存在するWindows)の場合、展開したフォルダーの中にあるx64フォルダーの中にあるputty.exeを作成したPuTTYフォルダーの中にコピーします。

32ビット版Windows(C:¥Program Files(x86)というフォルダーが存在しないWindows) の場合、展開したフォルダーの中にあるputty.exeを作成したPuTTYフォルダーの中にコピーします。

次に、展開したフォルダーの中にあるiniフォルダーの中にあるputty.iniを同じPuTTYフォルダーの中にコピーします。

最後に、展開したフォルダーの中にあるja-JPフォルダーの中にあるputty.lngを同じPuTTYフォルダーの中にコピーします。

TeraPadをプログラミング用に設定する

TeraPadを起動し、「表示」メニューの「オプション」を選択し、表示されたウィンドウの「表示」タブを選択、「マーク」の中にある「TAB」「半角空白」「全角空白」にチェックを入れて(「改行」と「EOF」はチェックを入れたままで)「OK」ボタンをクリックします。

TeraPadでCプログラムを作成する

TeraPadを起動した状態で、「表示」メニューの「編集モード」から「C/C++」を選択してから、次のように入力します。

#include <stdio.h>

int main(void) {
  printf("Hello World!\n");
  return 0;
}

日本語版Windowsでは、バックスラッシュ \ の代わりに円記号 ¥ を使います。

プログラムを入力したら、「ファイル」メニューの「文字/改行コード指定保存」を選択し、文字コードを「EUC」、改行コードを「LF」にして「OK」ボタンをクリックします。

Cプログラムのファイルを保存するときは、拡張子を.cにします。 ここでは、hello.cとして保存します。

WinSCPでCプログラムをLinuxに転送する

WinSCPを起動し、転送プロトコルは「SFTP」のまま、ホスト名に「luna.isc.chubu.ac.jp」を入力、ポート番号は「22」のまま、ユーザー名とパスワードはLinuxアカウントとして登録したものを入力し、「保存」ボタンをクリックし、そのまま「OK」ボタンを押して保存します。 (パスワードの保存はおすすめしません。)

左のリストから保存したセッションを選択し、「ログイン」ボタンをクリックします。

初めてログインするときは、不明なサーバーとして警告されますが、「はい」ボタンをクリックしてこのサーバーのホストキーをキャッシュします。 ホストキーをキャッシュしておけば、次からは警告されません。

ログインできると、左側にWindowsのフォルダーが、右側にLinuxサーバーのディレクトリーが表示されます。

Windowsに保存したCプログラムを左側から右側にドラッグ・アンド・ドロップすると、ファイルが転送されます。

PuTTYでLinuxにログインしてCプログラムをコンパイル・実行する

PuTTYを起動し、左のカテゴリーから「ウィンドウ」の「変換」を選び、Remote character setのリストから「EUC-JP」を選びます。 次に、左のカテゴリーから「セッション」の「ログ」を選び、ホスト名に「luna.isc.chubu.ac.jp」を入力、ポート番号は「22」のまま、接続タイプは「SSH」のままにして、セッション一覧から「Default Settings」を選択して「保存」ボタンをクリックします。

初めてログインするときは、セキュリティ警告が出ますが、「はい」ボタンをクリックしてPuTTYのキャッシュに鍵を追加します。

ターミナルのウィンドウが表示されたら、ユーザー名とパスワードを入力してログインします。

ログインしたら、cdコマンドを使ってCプログラムを保存したディレクトリーに移動し、lsコマンドを使ってCプログラムのファイルがあることを確認します。

たとえば、basic_cというディレクトリーにプログラムを保存しているときは次のようにします。 (luna%はコマンド・プロンプトを表していて、自分では入力しません。)

luna7% cd basic_c/01
luna7% ls
hello.c

Cプログラムがあることを確認したら、catコマンドを使ってCプログラムの内容を確認します。

luna7% pwd
/usr2/gep00000/ep00000/basic_c/01

Cプログラムが転送したものと同じであることを確認したら、gccコマンドを使ってCプログラムをコンパイルします。

luna7% cat hello.c
#include <stdio.h>

int main(void) {
  printf("Hello World!\n");
  return 0;
}

プログラムに間違いがなければ、コンパイルが成功しても何も表示されません。 プログラムに間違いがあると、エラーが表示されます。

プログラムに間違いがあるときは、WindowsのTeraPadで修正し、WinSCPで転送し、コンパイルをやり直します。

コンパイルが成功したら、lsコマンドを使ってa.outというファイルができていることを確認します。

luna7% gcc hello.c

最後に、コンパイルしてできた実行ファイルを実行します。

luna7% ls
a.out    hello.c
トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS