エイリアスの設定 for カーナビ


グラフィック表示を行う際には、第5回で学んだようにプログラムのコンパイル時に今までの cc に比べてたくさんオプションが必要になります。

カーナビプログラムのグラフィック表示では、以下に示すように、文字情報等を表示するためにさらに多くのオプションが必要となります。

cc map.c -g -O2 -Wall -Wno-unused-result -o map -I/usr/include/freetype2 -lftgl -lglfw -lGLU -lGL -lX11 -lXrandr -lm

(map.cを実行ファイル名mapとしてコンパイルする場合の例)

一回一回、長いオプションを付けてコンパイルを行うは手間となりますが、この手間を省くには2つの方法があります。

1つは、alias という短縮ダイアルのような機能を利用する方法です。 まず、ホームディレクトリに移動します。 (login 直後 or, cd コマンドだけで移動できる。)そこに、glcc.shというファイルを生成します。 そして中に以下の内容を記入します。

#!/bin/bash
cc $1.c -g -O2 -Wall -Wno-unused-result -I/usr/include/freetype2 -lftgl -lglfw -lGLU -lGL -lX11 -lXrandr -lm -o $1

$1はシェル変数と呼ばれ、この部分にコンパイルしたいファイル名が代入されます。 続いて、この.shファイルに権限を与えるため、ターミナルで次のコマンドを打ち込んでください。

chmod +x glcc.sh

そして、同じくホームディレクトリにある.bashrc というファイルに

alias glcc='/home/gakusei2017/glcc.sh'

という内容(行)を追加してください。 これは、別名定義と言って、ccに多数のオプションを付けた状態をglccという名前で使えるようにしています。 これは次回の端末起動から自動的に設定されますが、今回は

source ~/.bashrc

というコマンドを実行して下さい。正しく設定できていれば

glcc map

だけでコンパイルできるようになります。

-oオプションを付けて実行ファイル名を指定しない場合には、実行するファイルはa.outという名前で出力されていましたが、今回の設定でコンパイルしたファイル名と同じ名前で出力されるようになります。 今回の場合はmapになり、プログラムを実行するためには

./map

としてください。

もう1つはmake というものを使う方法 です。ここでは説明しませんが、これからプログラムをガンガン行う人は、是非makeの使い方を覚えておいてください。