計算機言語
I: Windows Subsystem for Linux
Windows Subsystem for Linux(WSL) この資料は
http://www.math.u-ryukyu.ac.jp/~suga/gengo/2020-1/02.pdf
にも置く予定です. Web class への login が面倒な時は, こちらを読んでください.
注意事項
今回の資料は, WIndows 10 を利用する人向けです. Windows 10 のVisual Studio は, とても重い処理系 で, 簡単なプログラムの作成にも, (特にその起動に) 時間がかかります. もう少し軽快に C の学習をするた めの一つの方法です. なお, この資料の内容を実行せず, Visual Studio をそのまま使い続けても, 受講する
1 WSL の導入手順
WSL とは, Windows 10 で Linux と同じコマンドが実行できる環境のことです. ただし, グラフィカルな 環境を導入するのは, (不可能ではありませんが) 面倒なので, ここでは, 「C コンパイラは WSL で」,「 エ
ディタは Windows のもので」という, ハイブリッドな環境を構築します.
1.1 Windows 10 の設定
ますは, Windows 10 で WSL が動くようにするための設定をします (通常は, 動かない状態になってま
す). この設定を変えるには, Windows 10 の管理者権限が必要です. 1. スタートボタンを右クリックして, 「アプリと機能 (F)」を選ぶ.
2. 現れたウィンドウの右上方の関連設定に「プログラムと機能」というリンクがあるので, そこをクリッ クする.
3. 現れたウィンドウの左上方の「Windows 機能の有効化または無効化」というリンクがあるので, そこ をクリックする.
4. 現れたウィンドウをスクロールして, 「Windows Subsystem for Linux」の欄にチェックを入れる. 5.「OK」ボタンを押してしばらくすると, 再起動を要求されるので「今すぐ再起動」をクリックして, 再
起動する.
1.2 WSLのダウンロードとインストール
1. Microsoft Store にアクセスする.
2. Window 右上の「検索」ボタンをクリックして, WSL を入力して検索する.
3. Linux のディストリビューションがいくつか出てくるが, ここでは,「Debian」を選ぶ.
4.「入手」ボタンをクリックすると, サインインを促す Window になるが「必要ありません」を選んで 良い.
5. パッケージのダウンロード (78MB くらい)がとインストール始まるが, 終了すると, 右上に「起動」ボ タンが現れるので, これを押す.
6. Windows のコマンドプロンプトが現るが,「Enter New UNIX username:」のプロンプトで停止する.
7. . これは, WSL の管理者としてのユーザの設定なので, 適当な名前 (なんでも良いが半角アルファベッ
トが後々楽)を入力して, Enter を押す.
8.「New password:」のプロンプトが現れるが, これは, 管理者になる際に必要なので, 適切なパスワード を設定する.
9.「Retype new password:」のプロンプトが現れるので, もう一度同じパスワードを入力する.
上で, Debian を選んだのは, 「軽い」という部分と, 私が比較的使い慣れているからです. 他のディスト
リビューションを選んでも構いませんが, 講義資料は, Debian を前提に書きます. (gcc のインストールあた
1.3 C の処理系の導入
上の状態では, Linux のコマンド(例えば ls) の多くは実行できるが, C の処理系はまだ入っていないので, 次のようにして入れる.
1. sudo apt update と入力して (空白に注意) Enter を押す. (これは, Linux のソフトウェアパッケージ データを最新にするため)
2. パスワードを聞かれるので, 上で設定した WSL 管理者のパスワードを入力する, 3. パッケージデータのダウンロードが始まるので, しばらく待つ.
4. sudo apt install gcc と入力して Enter を押す.
5. Do you want to continue? [Y/n] と聞かれるので, Y 入力して Enter.
6. 割と大きな処理系なので, 導入に数分の時間がかかる.
7. 終わったら, gcc -v と入力して Enter を押す. gcc (Gnu C Compiler) のバージョン表記が英語で出力 されれば, C の処理系の導入は終わりです.
次に起動するときには, スタートボタンから, Debian を選べば, 上のウィンドウになります.
2 エディタ
素朴な WSL では, vi とか nano というエディタしか使えず. これを初心者が利用するのは, 大変そうで す(慣れれば, vi は便利なのですが). また, Visual Studio のエディタ (Visual Studio code)は, 高機能です が, 起動に時間がかかる上に, C.のソースの標準のファイル識別子.c での保存が面倒です. システム付属の
「メモ帳」は, ソースコードエディタとしては, 使いづらいです.
上のような理由があるので, Windows 用のフリーソフトのテキストエディタを利用して C のソースを書 くことが, 合理的な気がします. 私自身, 普段 Windows を使っていないので, 何が良いのか見当がつきませ ん. 目についた「サクラエディタ」を挙げます. ネットで検索して, ダウンロード, インストールしてくださ い. (他の良いのを知っている, あるいは普段使いのエディタがあるのならそれでも良いです.)
サクラエディタのダウンロードサイト(GitHub)からダウンロードするのは, 最新版の最後がInstaller.zip となっているファイルです. ダウンロードした後, zip ファイル(データが圧縮されたファイル) を右クリッ クで展開し, できたフォルダの中に実行可能ファイルを, ダブルクリックします.
その際, Windows Defender が警告ウィンドウが出た場合には,「詳細情報」をクリックすると現れる「実
行」ボタンをクリックします. インストールオプションは, 意味がわかれば, 適当に設定してください. 分か らなければ,「次へ」ボタンをどんどんクリックして下さい.
重要 エディタは他のを使っても構いませんが 保存するファイルの文字コードは にして下さい
3 ハイブリッドな処理系の使い方
上のように, WSL の C コンパイラと, Windows のエディタを組み合わせて使うには, 次のようにします.
Windows のファイルブラウザ (エクスプローラー) で「ドキュメント」の中に, 授業用のフォルダを作り
ます. フォルダ名はなんでも良いのですが, 例えば「C」とします(鉤括弧は引用符の意味で, 半角大文字 C 一文字の意味, この辺に全角文字とか空白文字は使わない方が楽).
ここに, Windows のエディタで, C のソースコードを保存していきます. 保存の際に, 文字コードが
UTF-8 になっていることに注意します (もう一つ, \(バックスラッシュ) が Windows 10 では¥で表示され ます). 古いエディタだと, 基本の文字コードが SJIS (Shift JIS) だったりするので, 注意すること.
例えば, C のソースコードを hogehoge.c というファイル名で, 上のフォルダ C に作成したとします. WSL の C コンパイラで, hogehoge.c を処理するには, 次のようにします.
1. WSL (この資料だと Debian) をスタートボタンから起動する.
2. cd /mnt/c/Users/(ユーザ名)/Documents/C で, ワーキングディレクトリを, 上で作ったフォルダ C に移す. ここで, (ユーザ名)は, Windows 10 のユーザ名で, WSL のインストールの時に作った, WSL 管理のためのユーザ名ではありません.
3. cc hogehoge.c (または gcc hogehoge.c)とタイプして Enter を押すと, ソースコードがコンパイルさ れます.
4. できたファイルを実行するには, ./a.out として Enter.
前ページの補足です. 絶対パス, ホームディレクトリ, cd などは, 計算機概論 I の講義を復習してくだ さい.
• WSL では, 実行開始時のホームディレクトリが, 隠しフォルダの中にあります. それを探し出して使う のは, ちょっと面倒です.
• WSL では, Windows 10 があるディスク(Windows でいう C ドライブ) は, 絶対パスで/mnt/c です. なので, 前ページの cd は, Windows のホームフォルダの中のフォルダへのワーキングディレクトリの 移動になります.