• 締切済み

a.outはどこへ?

WindowsでCのプログラミングを始めたばかりです。 環境はcygwinを使っているのですが、gccでコンパイルしてもa.outファイルが出来ません。 gccのコマンドの後には特にエラーも出ませんし、一見成功しているように見えるのですが、やっぱりa.outが出来ていません。 なぜなのでしょうか?

noname#9262
noname#9262

みんなの回答

  • toysmith
  • ベストアンサー率37% (570/1525)
回答No.3

コンパイルを実行したときのコマンドラインを書いてください。

noname#9262
質問者

お礼

 gccのパッケージをもう一度インストールしてみたら出来ました。最初からインストールされていなかったのかもしれません。  回答していただいた皆様に感謝いたします。

noname#9262
質問者

補足

回答ありがとうございました。 コマンドラインは以下のとおりです。 $gcc ファイル名 しばらく、時間が立つと、再びプロンプトが。 $ lsコマンドで検索しても元のファイルだけでやっぱりa.exeはできていません。

  • PAPA0427
  • ベストアンサー率22% (559/2488)
回答No.2

はじめまして。 コンパイルされるときMakeファイルをお使いでしょうか? お使いでしたら、Makeファイルの中にexeが作成される、ディレクトリパスとexe名が記述されていいるのでは? 手動であれば、コンパイラをセットアップされた時にデフォルトパスが切られているはずなので、環境設定をチェックしてみて下さい。

noname#9262
質問者

補足

回答ありがとうございました。 すみません。。(汗)。Makeファイルというのはなんですか? 環境設定のチェックはどうやればよいのでしょうか?

  • hogeta
  • ベストアンサー率14% (4/28)
回答No.1

UNIX系OSのa.outは、elfという実行形式のファイルで、 これはWindowsでは実行できません。 逆に、Windowsではexe形式という実行形式でないと 実行できません。 Cygwinは、Windows環境を想定しているので、exe形式の ファイルを吐き出します。 なので、a.outではなくa.exeというファイルになります。

noname#9262
質問者

補足

回答ありがとうございました。 a.exeも出来ないのですが。。(汗)

関連するQ&A

  • コンパイル ./aと./a.out の違い

    ほんとにcの初心者なのですが、 今Tera Termを使って、ソースを書いて、コンパイル、実行をしているのですが、 例えばtest.cというファイルを gcc test.c とやってコンパイルして、 a.outというファイルができます。 それを./aとやれば実行できると聞いてやってみたのですができません。 ./a.outはできるのですが なぜなのでしょうか??

  • Cygwinのエディタについて

    Cygwinのエディタのviで、c言語のプログラムを作成し、gccでコンパイルすると、a.exeというファイルができます。私は今まで、Linuxのviでc言語のプログラムを実行するときは、a.outを使っていました。 Cygwinのviでもa.outを使うにはどう設定すればよいのでしょうか?

  • 実行ファイルが作成環境以外のPCで実行が出来ません。

    実行ファイルが作成環境以外のPCで実行が出来ません。 現在Windowsプログラミングでアプリケーションを作成しております。 しかし作成した実行ファイルを他のPCで実行しようとすると [cygwin1.dllが見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールしなおすとこの問題は解決される場合があります。] とのエラーメッセージが表示され、実行することができません。 恐らくCygwin関係のエラーだとは思うのですが、Cygwinが入っていない環境でも使用できるようにすることは出来ませんでしょうか? 必要そうな情報を下に書いておきます 作成環境:Vista Cygwin コンパイル:gcc -mwindows a.cpp a.o 実行環境:X Cygwin無し

  • コンパイル時に a.out と入力するとエラーが出てしまいます。

    コンパイル時に a.out と入力するとエラーが出てしまいます。 テキストファイルを複数 (最大で255個) 書き込むC言語のプログラム「f.c」を作成しまして それらのファイルは全て cygwin/home という場所に保存されます。 ただ、ファイルの中身は多くの文字が並ぶので(最大 500列 × 70000行 程度) 全てのファイルを書き込むには時間がかかりすぎてしまいます。 a.out を使って プログラム内にある scanf("a=", &a); scanf("b=", &b); これらの変数 a,b を出力し 実行結果で書き込まれるファイルを データとして出力する方法が知りたいのですが (この方法をバッチ処理というのでしょうか?) $ cc f.c (← 実行結果の際のコンパイル) その次に a.out と入力するとエラーが起きます。 a.out の使い方や意味を調べてもいまいち理解し難く困っております。 さきほど言った scanf で値を決める a,b を プログラム内で決めるのではなく a.out a b と入力してデータを出力させるには どのようにすればよいのでしょうか? なぜエラーしてしまうのかも教えて頂けないでしょうか? 長々と質問してしまいすみません。 どうか ご回答 よろしくお願いします。

  • cygwin プログラミング コンパイラ

    c言語のプログラミングの練習のためにcygwinというものをwindows vistaにダウンロードしたのですが、gcc fib.cみたいにコンパイルしたらbash:gcc:command not foundとでてきます。 コンパイラはcygwinと別にダウンロードしないといけないのですが。 エディタとしてメモ帳をつかってるのですが おしえてください

  • .oと.outファイルの違い

    gccでコンパイルするとa.outというものができます。 (-oで何も設定しなければ) これはC++のソースファイル1つをコンパイルした時に できる.oのファイルと同一のものでしょうか? #.oは.outの略? .oのファイルの中でmain関数を持っているものが、実行可能形式に なれるのでしょうか?

  • cygwinでのgcc

    畏れ入ります。 UNIXどタコですm(__)m 最近CYGWINで簡単にUNIXが体験できるということで早速インストールしました。 KDEとGNOME無事起動しました。 で、実は図書館で「Xlibで簡単プログラミング」というのを借りてきたので、ちょっと遊んでみようと思いとりあえずc言語がコンパイル、実行できるかどうかやってみたのですがうまくいきませんでした。 #include <stdio.h> int main(){ printf("HelloWorld \n"); } のようなプログラムをvimで作成するところまではうまくいきました。homeディレクトリに作成されていました。 それで gcc hello.c とやればよいのですよね?! 実は文字がたくさん出て、コンパイルできたのかどうか・・・?そして、a.outというファイルができるのですよね?間違っていますでしょうか? とりあえず、できていません・・・(>_<) ./a.out としても、no fileです・・・ なにか間違っていますでしょうか?

  • Cygwinに付属しているg++コマンドについて

    こんにちは。 Cygwinに付属しているC++コンパイルコマンドのg++について、いくつか質問させて下さい。 ・g++はC++だけでなく、Cのソースファイルもコンパイルできるので、Cのプログラムを開発するときは、gccは必要なく、g++だけでよいと思うのですが、どうしてgccが存在するのでしょうか? g++だけで十分ですよね? ・bashなどのコマンドライン上で g++ -print-libgcc-file-name と入力すると、コンパイラのコンパニオンライブラリ名を表示されるようなのですが、 コンパイラライブラリって何なのでしょうか? ちなみに自分の環境では、 /bin/../lib/gcc/i686-pc-cygwin/4.3.4/libgcc.a と表示されました。 ・-timeオプションを付けてg++でCソースファイルをビルドすると、以下のようになりました。 $ g++ -time "test.c" # cc1plus 0.03 0.01 # as 0.00 0.01 # collect2 0.00 0.08 1つめの時間と、2つめの時間は、それぞれ何を意味するのでしょうか? ・g++で使えるコマンドラインオプションとgccで使えるコマンドラインオプションは、 一緒のような気がするのですが、g++でしか使えないコマンドラインオプションってありますか? 以上です。 よろしくお願い致します。

  • windowsとcygwinのフャイル共用について

    学校でcygwinを使ってるんですが、分からないことが多すぎて勉強に追いつけません。C言語は出来るのですが、cygwinの操作に慣れなくて苦戦しています。 そこで質問なんですが、cygwin(vi)でプログラム(C/C++)を作るのがめんどくさいので、先ず最初にwindowsのメモ帳を使ってプログラムを書いた後、cygwin(gcc)でコンパイラさせたいんでけど、テキストファイルが何処にも見当たりません。 というかコマンドラインでのファイル操作が出来ません。 どうやったらwindowsとcygwinでのフャイルのやり取りが出来るのでしょうか? もし誰か知っていたら教えてください お願いします

  • cygwinでのフャイルやり取り

    学校でcygwinを使ってるんですが、分からないことが多すぎて勉強に追いつけません。C言語は出来るのですが、cygwinの操作に慣れなくて苦戦しています。 そこで質問なんですが、cygwin(vi)でプログラム(C/C++)を作るのがめんどくさいので、先ず最初にwindowsのメモ帳を使ってプログラムを書いた後、cygwin(gcc)でコンパイラさせたいんでけど、テキストファイルが何処にも見当たりません。 というかコマンドラインでのファイル操作が出来ません。 どうやったらwindowsとcygwinでのフャイルのやり取りが出来るのでしょうか? もし誰か知っていたら教えてください お願いします

専門家に質問してみよう