情報学概論Ⅱ 第8回

企業情報学部

6/3

情報学概論2 第8回(6/9)

(Introduction to Informatics 2)

0 はじめに(事務連絡など)

  1. 成績評価について:加点法

    • 当科目では主に提出物を中心にして加点法で成績評価をします。
    • 期末試験も(感染状況により突発的な変更の可能性はありますが)行われる予定ですが、試験も、加点法の成績評価の一環だとご理解下さい。
  • レポート課題についての考え方:(昨年こんな資料を提示しました)
  1. 前回の補足(日の丸を数値で指定して作るいくつかの方法について)

1 作業の自動化(その3)

1.1 コンテキストメニュー

  • 前回作った .bat ファイルの呼び出し方を、さらに探ってみる。
  1. コンテキストメニュー regedit
    • Windowsでは、レジストリを直接操作することで項目の追加が可能
    • (だが煩雑なのでお勧めはしない)代わりに、
  1. 「送る」メニュー sendto
    • ここに登録することならさほど困難ではないので紹介しておく

1.2 ビルドツール(Make と Makefile)

  • プログラミングでは重要な作業であるため、最近は、 makeの仲間 ビルドツールは各プログラミング言語ごとに整備されている。
    • たとえば ruby 用に rake がある。
  • rake は(単語の意味としては熊手だが)make の名前(の響き)を借用して命名されている。
  • 初期のビルドツールとして有名なのが Make。(今も現役)
    • 今回はこれを紹介する。
実習
作業の流れ
  1. インストール
  2. Makefile を作成
  3. make コマンド(まずはコマンドプロンプトから)
MakeFile の内容

今回は最低限の指定として2つのことを書く

  1. ルール記述 makefile文法
    • サフィックスルールとパターンルール 2つの書き方がある
    %.html:%.md
     pandoc -o $@ $<
  • この2行目(アクション行)は Tab文字でインデントする必要がある

    (エディタによってTabが複数のスペース文字に分解されないように)。

    • Atomの場合、(編集メニューから)文法「Makefile」を選択しておくといい。
  1. ターゲットを指定して呼び出す
    • 例えば、現在のフォルダ(makefileが置かれている)に、 ソースファイル aaa.md があるとすると、

      ソースファイルの拡張子を .html に置き換えてそれを ターゲットにする。

    make aaa.html

2. 課題

以下の2つを各自で実施しておいて下さい。(できたかどうか報告下さい)。

  1. make (GNU Make)をインストールする

    (導入の方法については、このアプリケーションの名前をヒントに検索などで調べてみて下さい)… でも scoop install make が一番楽そう。

  2. 上記にサンプルとして示した2行の内容で Makefile を作成する。