計算数学演習第0回

C言語+gnuplotを使うには?

この授業ではC言語の基本的な使い方とgnuplotによるグラフの描画を行います。
特にC言語はこの授業で扱う常微分方程式の数値解法などの数値計算では非常に高速なため、昨今人気のPythonでも部分的にC言語を使用するなど、根強い人気があります。
また、数値計算結果をグラフで描画する際には、グラフ描画ソフトが必要です。そのため、この授業では描画ソフトとしてgnuplotを使います。
しかし、C言語を利用するにはC言語のコンパイラが必要ですし、gnuplotも通常インストールはされていません。
メディアセンターのPCにはどちらも標準で利用可能となっていますが、皆さんのPCには自分でインストールする必要があります。
そこで、自宅からオンラインで授業に出席したい人や、自宅で予習復習をしたい人は、以下の方法を参考にしてみてください。

Windowsの場合

※ 以下は生成AIを用いて作成しています。

このページでは、Windowsパソコンで
C言語(gcc)gnuplot を使う方法を説明します。
プログラミングやPCにあまり慣れていない人も多いことを前提に、できるだけゆっくり説明します。

方法は大きく2つあります。

  • A. WSL2(ウィンドウズの中でUbuntuを動かす方法) ← おすすめ
  • B. MSYS2(Windowsネイティブな開発環境)

どちらも無料です。
迷った人は、まずは A. WSL2 を試してください。


A. WSL2(Windows Subsystem for Linux)+ Ubuntu を使う方法(おすすめ)

WSL2 は、Windows の中で Ubuntu(Linux) という OS を動かす仕組みです。
研究用の計算サーバやクラスタに近い環境になるので、将来的にも役に立ちます。

ただし、以下のような場合はうまく動かないことがあります:

  • 会社や大学で管理されているPC(権限が制限されている)
  • 非常に古いWindows(Windows 10のかなり前のバージョン)

その場合は、後半の B. MSYS2 を試してください。


A-1. 事前に確認しておくこと

  • Windowsのバージョンが新しいこと(Windows 10 または 11)
  • Windowsの更新(Windows Update)がある程度済んでいること
  • ノートPCの場合は、電源に接続して作業すること(途中で電源が切れると面倒)

A-2. WSL2とUbuntuのインストール

まず、PowerShellを「管理者として」起動します。

  1. 画面左下の「スタート」ボタンを押す
  2. 「PowerShell」と入力して検索
  3. 「Windows PowerShell」を右クリック → 「管理者として実行」を選ぶ
  4. 「このアプリがデバイスに変更を加えることを許可しますか?」→「はい」を押す

青い画面(PowerShell)が開いたら、次のコマンドを1行そのままコピーして貼り付け、Enterを押します。

wsl --install

しばらく待つと、必要な機能と「Ubuntu」のインストールが始まります。
ここで数分〜十数分かかることがあります。フリーズではないので、しばらく待ってください。

よくあるつまずき1: エラーが出て途中で止まる

  • Windows Update をしていないとエラーが出ることがあります。
  • 一度PCを再起動してから、もう一度 wsl --install を試してください。

インストールが進むと、PCの再起動を求められます。その場合は、指示に従って再起動してください。


A-3. Ubuntuの初期設定

再起動後、しばらくすると黒い画面で Ubuntu が自動的に起動します。
(起動しない場合は、スタートメニューから「Ubuntu」を探して起動します。)

初回起動時には、以下の2つを聞かれます:

  1. UNIX ユーザー名(例: yourname)
  2. パスワード(2回入力)

これは Ubuntu の中だけで使う名前とパスワードです。
忘れないように紙やメモ帳に書いておいてください。


A-4. Ubuntu の更新と C コンパイラ(gcc)のインストール

Ubuntu の黒い画面(ターミナル)で、次のコマンドを順番に実行します。

1つ目(パッケージ情報の更新):

sudo apt update

最初にsudoを使うとき、パスワードを聞かれます。
画面に何も表示されなくても、そのままパスワードを入力して Enter を押してください。

2つ目(実際の更新作業):

sudo apt upgrade -y

3つ目(gcc や make などの開発ツール一式のインストール):

sudo apt install -y build-essential

よくあるつまずき2: 「Y/n」と聞かれたのに何も入力せず止まる

  • -y を付けていれば聞かれません。
  • もし聞かれた場合は、y を押して Enter で進みます。

A-5. gnuplot のインストール(Ubuntu 側)

同じ Ubuntu の画面で、gnuplot をインストールします。

sudo apt install -y gnuplot gnuplot-x11

バージョン確認:

gnuplot --version

簡単なテスト:

echo "plot sin(x)" | gnuplot -persist

正しく設定されていれば、簡単なグラフウィンドウが表示されます。
(環境によっては、最初の起動に少し時間がかかることがあります。)

よくあるつまずき3: 画面が開かずエラーになる

  • Windows 11 / 新しめの Windows 10 では、通常は自動で表示されます。
  • 古い環境では X11 関連の設定が必要なことがあります。困った場合は教員に相談してください。


A-6. Visual Studio Code(VS Code)との連携

ソースコードの編集には VS Code を使うと便利です。

  1. VS Code の公式サイトからインストーラをダウンロードしてインストール
  2. VS Codeを起動し、左の「四角いアイコン(拡張機能)」を押す
  3. 「 WSL」 という拡張機能を検索してインストール
  4. 同じく拡張機能から C/C++(Microsoft製) をインストール
  5. Ctrl + Shift + P を押し、「WSL: Connect to WSL」を選ぶ

これで、VS Code から Ubuntu 上のフォルダを開いて、C言語のソースコードを編集できます。


よくあるつまずき:

  • VS Code が Windows モードのまま → 左下の「><」から WSL に接続
  • 拡張機能がインストールできない → インターネット接続やプロキシ設定を確認

A-7. VS Code で作業フォルダを作り、WSLターミナルでコンパイル

ターミナルは VS Code の統合ターミナルを使うことを推奨します。
WSL を単独で開くとフォルダ位置がズレて「ファイルが見つからない」という事故が多発します。

① Ubuntu のホームフォルダを VS Code で開く

  • File → Open Folder → /home/(あなたの名前)

② 作業フォルダ(cprog)を作る

③ test.c を作る

#include <stdio.h>
int main(void) {
    printf("Hello WSL2!\n");
    return 0;
}

④ VS Code の統合ターミナルを開く

Terminal → New Terminal
カレントディレクトリが /home/あなたの名前/cprog になっていることを確認。

よくあるつまずき:

  • カレントディレクトリが違う → pwd で確認 / cd ~/cprog で移動

⑤ コンパイルと実行

gcc test.c -o test
./test

よくあるつまずき:

  • command not found: gcc → build-essential が入っていない
  • Permission denied./test の前に chmod +x test が必要な場合あり

A-8. Windows のエクスプローラから Ubuntu フォルダを開く(ショートカット作成)

ファイル迷子防止のため、必ずショートカットを作ることを推奨します。

① エクスプローラで以下を入力

\\wsl.localhost\Ubuntu\home\(あなたの名前)

よくあるつまずき:

  • 「アクセスできません」→ WSL が起動していない。Ubuntu を起動してやり直す。

② ショートカット(好きな方法を選ぶ)

a. デスクトップに作成

  1. フォルダを右クリック → ショートカットの作成

b. クイックアクセスにピン留め

  1. フォルダを左のメニューへドラッグ → 「クイックアクセスにピン留め」

ポイント:
どちらでも良いので、自分がすぐ開ける方を選んでください。


B. MSYS2(MinGW-w64 + gcc)を使う方法(WSL2が使えない場合)

WSL が使えない環境向けの代替案です。


B-1. MSYS2 のインストール

公式サイト:https://www.msys2.org/

よくあるつまずき:

  • インストール後に MSYS2 を閉じてしまう → もう一度スタートから起動すればOK

B-2. MSYS2 の更新(重要)

pacman -Syu

途中で「一度閉じて」と表示されたら閉じてもう一度:

pacman -Syu

よくあるつまずき:

  • 更新途中で止まったように見える → 実際は動作中。待つ。

B-3. MinGW64 の gcc をインストール

必ず MSYS2 MinGW 64-bit を使用。

pacman -S --needed base-devel mingw-w64-x86_64-toolchain

よくあるつまずき:

  • MSYS(赤文字)で実行 → 動かない。必ず MINGW64 を使う。

B-4. gnuplot のインストール

pacman -S mingw-w64-x86_64-gnuplot

B-5. VS Code から使えるようにPATHを設定

環境変数 Path に以下を追加:

C:\msys64\mingw64\bin

よくあるつまずき:

  • VS Code を再起動していない → 古い環境変数を読み込んでいる

以上で WSL(A)と MSYS2(B)のセットアップ完了です。
迷ったらまずは A(WSL)を推奨します。

C. まとめ:どちらを選べばよいか

  • WSL2 + Ubuntu(A)
    将来、Linux や研究用計算機を使う予定がある人におすすめ。
    「本物の」Linuxに近く、応用範囲が広い。
  • MSYS2(B)
    WSL2 がうまく入らないPCや、Windowsの中だけで完結したい人向け。

どちらであっても、「Hello WSL2!」または「Hello MSYS2!」 が表示できれば、
C言語とgnuplotを使う準備は整っています。

うまくいかない場合は、慌てずに

  1. エラーメッセージの画面の写真(スクリーンショット)を撮る
  2. 自分の Windows のバージョン(設定→バージョン情報)を確認する
  3. 授業で指定された方法で、教員に質問する

途中でつまずくのは普通のことです。1人で悩まず、遠慮なく質問してください。

Linux (Ubuntu)の場合

C言語のチェック

ターミナル上で

which gcc

とする。/usr/bin/gccなどの文字が帰ってくればOK。
もし返ってこない場合は

sudo apt-get install gcc

としてgccのインストールを行ってください。

gnuplotのインストール

ターミナル上で

sudo apt-get install gnuplot-qt

を実行(Ubuntuの場合)

CentOSなど、他のLinuxを使っている場合は、apt-getではなくyumなどのパッケージ管理システムを使うか、直接gnuplotのホームページからソースコードをダウンロードしてインストールをする(ここでは詳細な方法は省略。ネット上に参考になるページがたくさんあります。)

インストールが完了したら、ターミナル上で

gnuplot

とうち、gnuplot>と表示されたら

plot x

などとして実際にグラフが描かれるか確認してください。

Mac (macOS)の場合

Macの場合は、Homebrewというパッケージ管理システムをインストールする過程でC言語を使うのに必要なXcode Command Line Toolsをインストールしてくれます。Homebrewはgnuplotのインストールにも使えますし、他にも諸々便利なので、是非インストールしましょう。

Homebrewのインストール

Homebrewについての細かいことはWeb上に様々な記事があり、ここで書いても仕方ないので省略します。
インストール方法ですが、

  • Homebrewのページに行き、でかでかと「Install Homebrew」と書かれたところのすぐ下のコマンドをコピー(右のアイコンをコピーしても良い)
  • ターミナル(アプリケーション/ユーティリティ内)を開き、先ほどコピーしたコマンドをペーストしてreturnキー
  • 何か聞かれたら(Y/n?みたいに出る)適当に答える(yesかnoで)
  • 途中で
    ==> The Xcode Command Line Tools will be installed.
    Press RETURN to continue or any other key to abort

    (Xcode Command Line ToolsをインストールするからRETURN押して)
    といわれたら素直にreturnキー

インストールが完了したら、一応ターミナル上で

which gcc

とする。/usr/bin/gccなどの文字が帰ってくればOK。何も表示されなければインストールできていない。
(多分インストールできていない場合はないと思うが、もしインストールされてなかったらXcodeをインストールする)

gnuplotのインストール(homebrew経由)

最新版のHomebrewであれば、ターミナルから

brew install gnuplot

とすればできるハズ。

Department of Mathematical and Life Sciences, Graduate School of Integrated Sciences for Life, Hiroshima University