- ベストアンサー
c言語のコンパイル後のエラ-について
Unix,window98を使用しています。 #include<stdio.h> main() { doublea,b,x,y; a=1.0 ; b=2.0 ; x=a+1.0/b ; y=(a+1.0)/b ; printf(" a=%f\n b=%f\n x=%f\n y=%f\n",a,b,x,y); } を gcc ファイル名.c でコンパイルして、 % ./ファイル名 で実行すると、 ./ファイル名; コマンドがみつかりません。 と表示され、 % ./ファイル名.c で実行すると、 ./ファイル名.c; アクセス権がありません と表示され、 % ./ファイル名.out で実行すると、 ./ファイル名.out; コマンドが見つかりません。 となり、困っています。 お答えを頂ければ、嬉しいです。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ファイル名.exeとファイル名.outが存在しないのではないでしょうか。 その2つが存在しないのは何らかの理由でコンパイルが完了せずに中断された ことが考えられます。 コンパイル時点でエラーメッセージが何か出ていませんでしたか? また、出ているようならそのメッセージを書いてもらえると答えやすいです。
その他の回答 (3)
- bagyo
- ベストアンサー率40% (16/40)
こんにちわ。 一応、UNIXではデフォルトではa.outというファイル名でロードモジュールが生成されます。もし、コンパイルするソースファイルがsrc.cで、生成したいファイル名がhogeだとすると、gccでしたら gcc -o hoge src.c とすれば、作成できます。 また、UNIXでは拡張子は関係ありませんので、例えば、hoge.exeとすることも当然できます。
お礼
御答え頂き有難うございます。
- punchan_jp
- ベストアンサー率55% (155/280)
gcc で出力ファイル名を指定していないのなら % ./a.out です。ls -l してみましたか?
お礼
御答え有難うございます。 この場合、ファイル名は指定していました。誤解を招いていたら、すみません。
- coolguys
- ベストアンサー率18% (351/1917)
実行するのであれば、 ファイル名.out で、良いのではないでしょうか?
お礼
お答え有難うございます。 早速、コンパイルを実行するため % ファイル名.out とすると、 ass.out: コマンドがみつかりません. が表示されます。 どうすればいいか、わかる方 お教え願います。
補足
お答え有難うございます。 コンパイルを行ったところ、 gcc ass.c と入力して、Enterを押すと ~eduhost(s699871m)% と表示されます。 エラ-メッセ-ジは出てないと思い、コンパイルはできたと考えています。 !! assは私のこの時使用したファイル名です。 !! ~eduhost (s699871m) は 表現の便宜上、仮にここではこう表しています。