Shammer's Philosophy

My private adversaria

Emacs 上でのコンパイル

ターミナルを使えば、コンパイル


 cc sample.c


とやると、同じディレクトリに sample.out という名前の実行ファイルが作られる。

  • o オプションを使用すれば sample.out 以外の名前を使用可能。

でもせっかく Emacs を使うのだから Emacs 上からコンパイルを行う。
(個人的に初めての経験でちょっとワクワクw子供か!)


Emacs にはモードというものがある。
そして、そのモードにはC言語開発に特化している c-mode というのがある。
Emacs 使いなら誰でも知っているメジャーモードですな!
拡張子 .c のファイルを読み込むと自動的にこれになるようだ。
意図的に変更するには、


 Meta+x c-mode


とミニバッファ(Emacs 窓下部のコマンド入力エリア)に入力してReturn-Keyを叩く。
そうすると、ステータスバー(?)に c-mode であることを伝える情報が出る。
ソースコードを書けば、#include とかの予約語が色づけされるからすぐにわかるけれど。
この状態で、ソースコードと同じディレクトリに Makefile という名前のファイルを用意する。
実際にコンパイルしたいソースコードの名前が sample.c の場合は、この Makefile


 sample:


と書いておく。そして、ソースコード編集後にミニバッファで


 compile


と実行すると、Compile command: make -k と表示されるのでそのまま Return-Key を叩く。
そうするとコンパイルされると同時に Emacs が上下2つのウィンドウに分かれて
下側の窓に実行結果が表示される。Error が表示されずに、


 Compilation finished at $Time


というような形で表示されれば問題なくコンパイル終了。($Time は実行日時)
Emacs 上から自分で書いたソースを実行することはできないのかについては別の機会に。