みなさんは、Linuxにおいて、C言語をコンパイルするときはどのようにしていますか?
超初心者的な質問ですみません。わからないのです。
ちなみに、Red Hatの7.1 を使っています。
できれば、一番簡単なHello World!プログラムを使って説明していただけないでしょうか。

makeコマンド?の意味もわからないので、できればわかりやすく、説明してください。
いろいろと、すみません。
どうか、お願いします。

A 回答 (3件)

makeコマンドの存在をしっているのであればまずman makeとかman gccとかするべきでしょう。



manにはmake.texinfoを見よと書いてあると思うのでmakeのソースを入手してinfo形式もしくはdvi形式のファイルを作れば詳しいことがわかります。(ただし、英語)

ソースの入手方法やtexinfo形式ファイルの処理方法は別途勉強してください。

もし、英語では読みこなせないばあいは書籍をさがすしかないかな。
    • good
    • 0
この回答へのお礼

なるほど、よくわかりました。
どうも、ご親切にありがとうございました

お礼日時:2001/09/13 07:43

natural> Hello World!の様な小さなプログラムであればgcc単体で行った方が簡単です。



これは、大きな誤解なんだなあ。例えば、

% gcc -o sample sample.c

に相当することを make を使ってやるのだったら

% make sample

で良いんですね。Makefile というファイルを作らなくても良いんです。

make は、元になるファイルから何かのコマンド(複数でも良い)を実行して、
あるファイルを作成するということを、なるべく楽に出来るように作られている
コマンドです。

元のファイル→出来上がるファイルの関係がありますから、もし、元のファイルが
出来上がるファイルよりも新しければ、もう一度「作る」ってことをしなくては
いけない、ということをなるべく機械的に実行できます。

ちょっと複雑になると、元になるファイルが複数あるとか、C言語の include の
ように、元になるファイルがあるファイルの記述を参照しているとか、そういった
関係も出てくるので、そのファイルの関係や、実行するコマンドやパラメータを
Makefile というファイルに記述して make に教えてあげることができます。

どんなファイルでも良いようになっているのですが、よくある場面として、
ソースファイルから実行プログラムを作る、というのがあるので、そのうち
メジャーな言語については「デフォルトの推論規則」っていうのがあって、
決まったパターンであれば、Makefile さえ作る必要がありません。

例えば、C言語だったら sample.c というソースを作れば、sample という
実行プログラムを作るのがデフォルトの推論規則として、既に make が持って
います。
    • good
    • 0
この回答へのお礼

なるほど、よくわかりました。
どうも、ご親切にありがとうございました

お礼日時:2001/09/13 07:44

コマンドラインでgccを使用してコンパイルします。



# gcc -o sample sample.c (#はプロンプト)

といった感じでしょうか。
"-o sample"は実行ファイル名をsampleという名前にするように指定しています。
これを付けないとa.outという名前の実行ファイルになってしまいます。
尚、makeはMakefileの記述を解釈・実行するコマンドで、Makefileにはコンパイル・リンクの手順を記述しておきます。
Hello World!の様な小さなプログラムであればgcc単体で行った方が簡単です。
makeに関しては参考URLをご覧下さい。

#RedHatにはgccが標準で入っているはずですが、見つからない場合はfind
#コマンド等で探し、pathを通して再実行してください。
#それでも見つからない場合はインストールディスクの何処か、または
#ネット上から探してくることになります。

参考URL:http://tanaka-www.cs.titech.ac.jp/~euske/doc/mak …
    • good
    • 0
この回答へのお礼

なるほど、よくわかりました。
どうも、ご親切にありがとうございました。

お礼日時:2001/09/13 07:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード


このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ