• ベストアンサー

Cプログラムのファイルを実行するには?

LinuxでCプログラミングをおこない、a.cというファイルをコンパイルをしたのですが、結果できたaというファイルを実行しようとしても実行できません…。どうやれば実行できるのでしょうか?初歩的な質問ですいません。。

質問者が選んだベストアンサー

  • ベストアンサー
  • kochory
  • ベストアンサー率45% (167/370)
回答No.3

プロンプトから"echo $PATH"と打ち込んでenterを押してみて下さい。 出てくるディレクトリの羅列の中にカレントディレクトリ ("./"のこと)が入ってなければ、#2さんのおっしゃるように、 明示的にそのファイルのパスを指定してやらないと実行されません。 $PATHという変数には、「コマンドラインからファイル名を 入力するだけで起動できる実行ファイル」が入っている ディレクトリのパスが入っています。 逆に言うと、この変数に入っていないディレクトリにある 実行ファイルは、ファイル名だけを打ち込んでも実行されず、 そのファイルへのパスを指定してやらないといけません。 シェルの設定ファイルをいじれば$PATHにパスを追加する ことができますが、カレントディレクトリ("./")を$PATHに 入れるのは、セキュリティ上お勧めできません。 (とはいっても実際は、入っていたほうが便利なので 入れちゃってる人も多いと思いますが。やるならやり方は 自分で調べて、自己責任でやってください)

anzan
質問者

お礼

なるほどなるほど。。ためになりますm(_ _)mありがとうございます。やり方だけでなく、その原理まで丁寧に教えていただいて、とても助かりました。またなにかありましたらよろしくお願いします(^^;)

その他の回答 (2)

noname#223623
noname#223623
回答No.2

カレントディレクトリにaがあれば $ ./a

anzan
質問者

お礼

教えていただいたとうりにしてみたらできました。ありがとうございました。

  • nitscape
  • ベストアンサー率30% (275/909)
回答No.1

chmod 777のような感じで実行属性を付けて./aのように実行してはどうでしょうか?

anzan
質問者

お礼

教えていただいた通りにやってみたらできました。ありがとうございました。。

関連するQ&A

専門家に質問してみよう