はじめまして。プログラミング初心者です。

先日独習Cという本を買ったのですが、その付属CD-ROMに添付されているGNU C compilierを使って実行しようとしてるのですが、何度本の通りにやってもうまくいきません。
簡単なプログラムを作ってTYC4THフォルダの中のsampleフォルダにtest.cというソースファイルを保存しました。

本によると、

読み取り専用の属性を解除

・ソースファイルを保存したディレクトリに移動

・gcc test.c と入力

・a.exe と入力すると実行される

となっています。
gcc test.cまではいいのですが、a.exeと入力すると

'a.exe'は、内部コマンドまたは外部コマンド
操作可能なプログラムまたはバッチファイルとして認識されていません。

と表示されます。どうすればいいのでしょうか?;;

このQ&Aに関連する最新のQ&A

A 回答 (9件)

a.exeじゃなくてaで実行してみて

    • good
    • 0

これはWindowsのコマンドプロンプトでの話でしょうか。



それなら、そのフォルダにパスが通っていないだけと思います。
.\a.exe
で実行できると思います。
    • good
    • 0

>int mai(void)



ここがmainになっていませんが、大丈夫ですか?
    • good
    • 0
この回答へのお礼

ご指摘ありがとうございます。

修正しましたが、やはりダメでした。

お礼日時:2009/05/28 14:08

>C:/TYC4TH/MinGW/lib/libmingw32.a(main.o):main.c:(.text+0x104): undefined reference to `WinMain@16'



gccの設定ファイル(リンカーの設定?)が、Windowsアプリケーションになっていると思われます。
作成しようとしているのはコンソールアプリケーションではないですか?

あと、環境やエラーメッセージなどは正しく書きましょう。
# ふつ~にgccとか言われると、たいていの場合はUNIX系かと想像されるかと。
# WindowsでMinGWとか使ったことありませんので、実際の設定などについては他の方からの回答に期待。
    • good
    • 0

a.outができていれば、a.exeにリネームして実行。

    • good
    • 0

>~.exeというものは全く生成されていませんでした><


>どうすれば生成されるのでしょうか?

コンパイルが失敗しているのではないでしょうか?
コンパイル時にエラーメッセージが出ていませんか?

test.cの全貌を「そのまま」貼り付けていただけますか?

この回答への補足

ご回答ありがとうございます。
これがtest.cの全貌です。

#include<stdio.h>

int mai(void)

{
printf("hello");
return 0;
}

また、gcc test.cと打った時

test.c:8:2: warning: no newline at end of file
C:/TYC4TH/MinGW/lib/libmingw32.a(main.o):main.c:(.text+0x104): undefined referen
ce to `WinMain@16'

と表示されました。

どうでしょうか?

補足日時:2009/05/25 00:01
    • good
    • 0

多分ですが...



./a.exe

で解決するような気がします。

この回答への補足

ご回答ありがとうございます。

今やってみましたが、
'.'は、内部コマンドまたは外部コマンド
操作可能なプログラムまたはバッチファイルとして認識されていません。

と出てきてしまいました;;

補足日時:2009/05/24 17:24
    • good
    • 0

gccコマンドを実行したあと、同じフォルダにa.exeは生成されてますか?


生成される事を想定されている説明になってると思います。
***.exeが生成されていたら、ちょっと読み替えて対応したほうがいいかもしれませんね。

この回答への補足

ご回答ありがとうございます。

~.exeというものは全く生成されていませんでした><
どうすれば生成されるのでしょうか?

補足日時:2009/05/24 17:26
    • good
    • 0

1.パスが通っていないので、フルパスで実行する


2.環境変数のPATHにそのプログラム(a.exe)があるフォルダパスを追加する
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

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

このQ&Aと関連する良く見られている質問

Qなんて書いてますか? ADD ME TO MARVEL'S DO NOT EMAIL LIST C

なんて書いてますか?

ADD ME TO MARVEL'S DO NOT EMAIL LIST
CHANGE MY EMAIL PREFERENCES

By entering your email address below, you will be unsubscribed from all future commercial emails from Marvel

Confirm your email address:

Aベストアンサー

ADD ME TO MARVEL'S DO NOT EMAIL LIST
私をMarvelの「メールを送らないリスト」に加えて下さい。

CHANGE MY EMAIL PREFERENCES
私のメールの設定を変更して下さい。

By entering your email address below, you will be unsubscribed from all future commercial emails from Marvel
下の欄にあなたのメールアドレスを入力すると、今後Marvelからの商業メールの送付が全て解除されます。

Confirm your email address:
あなたのメールアドレスを(所定の欄に入力して)ご確認ください。

Qbash.exeを直接起動するとgccが実行できま

C言語を始めてみようと思ってcygwinをインストールしました。初心者です。
Cygwin.batから起動するとキチンとgccコマンドが使えるのに、bash.exeから直接起動すると、なぜかcommand not foundとなってしまいます。emacsからコンパイルできるようにしたいと思っているので、不都合で困っています。どうすればよいのでしょうか。

Aベストアンサー

パス通ってます?

printenvとbashでやったらどうなりますか?

QTO DO LISTを日本語で言うと?

よくビジネスで、TO DO LISTって使いますよね。
手帳なんかにも出てきますね。

文字通り「やらなければならないことのリスト」という意味であることはわかるのですが、
そういう直訳的・説明的な訳ではない、ひとことでビシッと言い表せる定訳ってありますでしょうか?

ビジネスの現場にあまり詳しくないので、ビジネス関係の方、みなさんどんなふうに言ってらっしゃるか知りたいと思います。
よろしくお願いします。

Aベストアンサー

#1でございます。すこし補足を。


日本国内にはじめてファイロファクスの「システム手帳」が入ってきた時に、今までの日本の手帳にはないまったく新しい概念のリフィルがありました。それが「TO DO LIST」です。

やるべきことを羅列していくだけの用紙ですが、画期的だったのは「チェックマーク」を入れる部分があったことです。

完了したものにはチェックを入れて「済」ということにしておけば一目瞭然であり、チェックの入っていない項目だけを注意して見ていれば良いわけです。

こうしたTODOLISTの「忘れていることが明瞭にわかる」という機能に対して、日本語の備忘(忘れたときのための備え)という意味を重ね合わせて「備忘録」と呼んでいました。

当時のシステム手帳を使い始めた人たちが同様に感じてTODOLISTを「備忘録」と呼んでいたわけで、英訳がどうこうという話ではないのです。

Qgccやg++がGNU製かどうかの確認法は?

初心者質問で失礼致します。

各UNIX上でgccやg++がGNU製のものかどうかは何処で確認できるのでしょうか?

% gcc -v
Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.3/specs
gcc version 2.95.3 20010315 (release)
% g++ -v
Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95.3/specs
gcc version 2.95.3 20010315 (release)

となりましたがGNU製なら"GNU"と表示されるのでしょうか?

Aベストアンサー

GNU製のソフトは、著作権を放棄しているわけではないので、

gcc,g++と言えばGNU製と考えていいと思います。
そうしたオリジナルのソースを利用したソフトについても、GNU使用許諾が適用されるので、そうした意味では"GNU製"と考えてイイかも。

元のgccを改変したプログラムの場合、
おそらく、-vなどのヴァージョン表示でその旨が記載されていると思います。

QOUTLOOKより軽いスケジューラ(TO DO LIST)

現在、OUTLOOKをスケジュール管理ソフトとして使っていますがかなり重いので他のものを探しています.
SCHEDULE WATCHER がいいときいて試してみたのですが
TO DO LISTの機能で定期的な仕事を入力する機能がないので困っています.
他にお勧めはありませんでしょうか
宜しくお願いいたします.

Aベストアンサー

私も、一時期スケジューラにはまって集めた記憶があります。
そのとき、SCHEDULE WATCHERも使用しました。
いっぱい集めたのですが、Zclock98というソフトも使用しました。
このソフトは、今Zclone98と名前を変えて配布されています。
ダウンロードして試してみてはいかがでしょうか。

(「定期的な仕事」という内容がよくわかりません。もう少し具体的に表記していただけませんか?)

参考URL:http://hp.vector.co.jp/authors/VA002242/zclone98/help_html/index.html

QCソースをexeにコンパイルする

Cソースをexeにコンパイルする

http://freenx.berlios.de/download.phpに置いてあるfreenx-X.Y.Z.tar.gzをWindows上で動作するexeにコンパイルしたいのですが、うまくできませんでした。使用しているOSはWindows XPです。

cygwinをインストールしてtar.gzを展開したフォルダまで行き、makeを実行しましたが、以下のようなエラーがでました。
http://pastebin.com/bfQtMFyW

この方法でexeにできるのかどうかも分からないのですが、もし別の方法があるなら教えてください。お願いします。

Aベストアンサー

> cygwinをインストールしてtar.gzを展開したフォルダまで行き、makeを実行しましたが、以下のようなエラーがでました。
> http://pastebin.com/bfQtMFyW
>
> この方法でexeにできるのかどうかも分からないのですが、もし別の方法があるなら教えてください。お願いします。

質問の最初にお書きになっているページに(freenx-X.Y.Z.tar.gzの少し下)『Read the building instructions at http://www.nomachine.com/………』と構築方法を説明したページが書かれていますので参照すると良いかと思います。

最初の回答に書かれているようにmakeの前にconfigureを行い導入している環境に適合したMakefileを作り直してもらう必要があるかと思います。
その前に環境変数を設定して共有ライブラリの場所を教えたり(export LD_LIBRARY_PATH=……)必要なソフトを確実に導入しておく必要があるかも知れません。
※ Cygwinのsetupで導入するソフトを選んだかと思いますが、構築方法の説明を見てKDEやGNOMEなどの構築するソフトで使う部品も導入しておく必要があるかも知れません。

makeだけで構築できるソフトはほとんどないかと思います。
configureなりxmkmf・imakeなりで調整し環境にあったMakefileを作ってmakeを行う(makeを行う前にいくつかの準備作業を行う)のが普通かと思います。
※ いきなりmakeするソフトの場合にはMakefileを編集して調整する必要がある場合が多いです。


楽しんで挑戦してみてください。

> cygwinをインストールしてtar.gzを展開したフォルダまで行き、makeを実行しましたが、以下のようなエラーがでました。
> http://pastebin.com/bfQtMFyW
>
> この方法でexeにできるのかどうかも分からないのですが、もし別の方法があるなら教えてください。お願いします。

質問の最初にお書きになっているページに(freenx-X.Y.Z.tar.gzの少し下)『Read the building instructions at http://www.nomachine.com/………』と構築方法を説明したページが書かれていますので参照すると良いかと思います。

最初の回答に...続きを読む

Qto.do.に関して

I have not choise but to do so.
のto do so.が何故to do soなのかわかりません。
to do so.には何の意味があるのでしょうか?
to.do.に対して理解できてません。

Aベストアンサー

前に書いているはずです。
まず、古いイギリス英語なら have not もありますが、
普通は I don't have any choice ~か、I have no choice です。

I have no choice but to do so. で「そうするより仕方がない」

「そうする」とは何かは前に書いているはずです。
これだけの例文なら、そういう前提での文と考えるしかありません。

Q独習C,C++

独習C,C++はお勧めでしょうか。
アンクの絵本シリーズと猫でも分かるシリーズは
持っています。

私は、C,C++は本当に初心者です。
そもそも、オブジェクト指向が分かりません。
Fortranならば多少分かりますが。

目的としては、趣味でWindows用の
フリーウェアを作りたいというくらいです。

もう一つは、I/Oデータの将棋、麻雀ゲーム
のアルゴリズムのソース(C++、JAVAで書かれています)
を解読したいということです。

Aベストアンサー

>サポートに連絡します。

 質問者様からも是非、削除依頼をお願いします。

>これが、プログラミングと何の関係があるのですか。

全くありません。
誠に申し訳ありませんでした。
主旨からはずれていました。

投稿後、
たとえURLを伏せ字にしても検索できること、
主旨とは直接関係しないことから、サポートに「削除」を依頼(12:12)し、
「確かに受け取りました。・・、質疑内容を確認し、必要に応じて適宜対処いたします」
との返信をいただきました(12:30)が、対応されなかったようです。
(自分の「回答」に、「通報・削除・編集する」事ができないため)

この度は、配慮のない行為で、不愉快な思いをさせてしまい、申し訳ありませんでした。

弁解させていただけば、
質問者様に、「周りの者は全て自分のことを知っている」から、全てを記述しないでもよい、という節が見られましたので、それを強調しようとして、誤って引用しました。
「例題が多いほうが分かりやすいかどうか」と、#1 お礼にありますが、こんなこと、質問せずとも判りますよね。
判りきったことを聞くのはどうしてか、が伏せられていますよね。
なぜ、GUIとはほど遠そうな訳書「独習C,C++」なのかも。
------------------------
>要するに、貴方は私が買った本を読んでいないといいたいのですか。

 違います、逆です。
>>AとBのスイートを食べたことがあります。

 AとBのスイートを食べた(読んだ)のに、どこで満足する(分かる)かは、本人かまたは超能力者でなければ、・・ということです。
 あえてお勧めしたとしても、

>>勧められて「独習シリーズ」を買ったのに・・となりかねない。

>貴方は、猫でも分かるシリーズも絵本シリーズも読んだことがないのでしょう。

 はい、読んではいません。「猫でもわかるプログラミング」サイトは、たまに見ることがあります。

   http://www.kumei.ne.jp/c_lang/index_sdk.html

 もし、本と同じ構成ならば、「Windows SDK編 第1部 」以降が、「GUIの作り方」に相当するかと思います。
 絵本シリーズのphpに関するものは購入したい、と思っています。

今回は重ね重ね不愉快な思いをさせてしまい、誠に申し訳ありませんでした。
そもそもの #1 からこの #3 まで、全てを削除していただきたいと思っています。

>サポートに連絡します。

 質問者様からも是非、削除依頼をお願いします。

>これが、プログラミングと何の関係があるのですか。

全くありません。
誠に申し訳ありませんでした。
主旨からはずれていました。

投稿後、
たとえURLを伏せ字にしても検索できること、
主旨とは直接関係しないことから、サポートに「削除」を依頼(12:12)し、
「確かに受け取りました。・・、質疑内容を確認し、必要に応じて適宜対処いたします」
との返信をいただきました(12:30)が、対応されなかったようです。
(自分の「回...続きを読む

QI'd like to do の過去形は?

「~したい」というときには、"I want to do"と言いますが、polite expression では、"I'd like to do"だということを以前教わって理解していたつもりなのですが、ふと「過去形では何と言うのかな?」という疑問が湧いてきました。

「~したかった」というときの"I want to do"の過去形は、"I wanted to do"だとわかるのですが、"I'd like to do"の過去形はどうやって表せばいいのですか?

"I'd like to do"は"I would like to do"だから、"I would have liked to do"になるのでしょうか?

Aベストアンサー

ご存知と思いますがなかなか英語と日本語は一対一には対応していないため、言い方はその内容により異なってきます。

>「やっと英会話スクールに入りました。前から行きたかったんです。」
という例ならば、普通に want でかまいません。(I've wanted to learn English in ESL classとか色々)
特に丁寧さに掛けるというわけでもありません。
あと、earger とか他の言葉による表現もあります。

なぜかというと、そもそもwantが強い表現で避ける理由は、自分の欲求をあからさまに主張する表現だから、それが実現していないにもかかわらず主張することがあさましい感じがするからなのです。

ですからそれをさけて would like to ~として、自分の欲求自体を仮定法を使って願望に変えているわけです。
つまり暗黙に、[if possible,] I would like to ~ と仮定の中において話しているから、控えめな表現とされるわけです。[]内は言葉にしませんがさまざまな適当な文に置き換えられるわけです。
日本語で言えば、「出来ましたら、~したいのですが、、、」のような表現ということです。

すでに実現した出来事に対して過去の自分の気持ちを言う場合には、would like のような表現は意味を成しません(仮定ではないわけですから)、wantのもつあさましさがあるわけではありません。(すでに実現しているから)

過去にそう思っていただけで現在も実現していないのであれば、仮定法過去をつかう表現にすることでwantのもつ浅ましさを消せるということです。

実現しているのであればwantは特に問題のある表現では無いということです。

ご存知と思いますがなかなか英語と日本語は一対一には対応していないため、言い方はその内容により異なってきます。

>「やっと英会話スクールに入りました。前から行きたかったんです。」
という例ならば、普通に want でかまいません。(I've wanted to learn English in ESL classとか色々)
特に丁寧さに掛けるというわけでもありません。
あと、earger とか他の言葉による表現もあります。

なぜかというと、そもそもwantが強い表現で避ける理由は、自分の欲求をあからさまに主張する表現だから、それが...続きを読む

QC/C++の独習できる無料のサイトってありますか?

C/C++の独習できる無料のサイトを探しています。できれば解析や、仕様書からプログラミングを作成、といった、実践的なことができるところいいです。もし良いところがありましたら教えてください。どうぞよろしくお願い致します。

Aベストアンサー

こちらはリンク集です。
http://www2.famille.ne.jp/~akio1998/l_cpp.html

C言語のサイトを2つ。
http://homepage1.nifty.com/toshio-k/prog/c/
http://www.bohyoh.com/CandCPP/C/index.html

お役に立ちますでしょうか?


人気Q&Aランキング