質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

MinGW

MinGW(ミン・ジー・ダブリュー)は GNUツールチェーンのWindows移植版です。 ランタイムライブラリと開発ツールで構成されています。

Q&A

解決済

1回答

1269閲覧

最新版MinGWを用いてC言語の環境構築をしたいです。

jack_kanzaki

総合スコア106

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

MinGW

MinGW(ミン・ジー・ダブリュー)は GNUツールチェーンのWindows移植版です。 ランタイムライブラリと開発ツールで構成されています。

0グッド

1クリップ

投稿2019/01/24 14:43

編集2019/01/25 01:14

cプログラミングの環境構築をしようと考えています。(Windows10)

①まず、MinGWを利用しようと思い、下記のサイトから最新のMinGWのファイルをダウンロードしました。
[リンク]https://sourceforge.net/projects/mingw-w64/

②次に、開発環境として、VisualStudioCodeを利用しようと、思いました。
様々なサイトにおいて、環境変数の設定からパスを通すように、と書かれていたので、そのようにしました。
尚、私の場合は、C:\MinGW-w64\mingw32\binという場所に、exeファイルが入っていたので、同箇所のパスを通しました。

③コンパイルができてると思い、VisualStudioCodeにおいて,
hello.cという名で下記のコードを作成し、

#include <stdio.h> int main(void){ printf("Hello World!"); return 0; }

ターミナルに
「gcc hello.c」と入力したところ、

「C:/MinGW-w64/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.1.0/../../../../i686-w64-mingw32/lib/../lib/libmingw32.a(lib32_libmingw32_a-crt0_c.ongw32.a(lib32_libmingw32_a-crt0_c.o):crt0_c.c:(.text.startup 0x39): undefined reference to `WinMain@16'
collect2.exe: error: ld returned 1 exit status」

と表示されました。

何が問題なのでしょうか。ご教授願います

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

LouiS0616

2019/01/24 15:04 編集

ターミナル(というよりコマンドプロンプト)で type hello.c したときの結果を追記していただけますか。
jack_kanzaki

2019/01/24 15:14

コマンドプロンプト上では、「指定されたファイルが見つかりません。」と表示されました。 尚、hello.cは、「C:\vscode」という場所に作成しました。 よろしくお願いします。
LouiS0616

2019/01/24 15:20

あ、一般のVisual StudioじゃなくてVisual Studio Codeですか。 ここが違うと全然意味が変わってくるので、質問を編集した方が良いと思います。
LouiS0616

2019/01/24 15:26

では改めて、VSCodeのターミナル上で type hello.c とした場合はどうなりますか。
jack_kanzaki

2019/01/24 21:34

失礼しました。 VisualStudioCodeしか、存じませんでした。 type hello.cとターミナルに入力したところ、 PS C:\vscode> type hello.c PS C:\vscode> と表示されました。 これは、コンパイルされた証なのでしょうか。 多々のウェブサイトでは、コンパイルされた証として、 a.exeと表示されると書かれていました。 引き続き、よろしくお願いします。
keicha_hrs

2019/01/24 23:49 編集

質問のタグにVisual Studio Codeを追加するべきでしょう。そういうタグもありますので。後はMinGWタグもあった方がいいかな?
jack_kanzaki

2019/01/25 01:13

すみません、初めての投稿で、不慣れでした。 以後、そのようにタグ付けします。 ありがとうございます。
guest

回答1

0

ベストアンサー

type hello.cとターミナルに入力したところ、

PS C:\vscode> type hello.c

PS C:\vscode>

と表示されました。

これは、コンパイルされた証なのでしょうか。

typeはファイルの中身をそのまま表示する命令です。
何も表示されないと言うことは、hello.cの中身が空っぽだということです

改めてhello.cを保存し直してみてください。

VSCodeはファイルの自動保存はしてくれないので(設定いじったら変えられるかもしれないけど)、
適宜手動で上書き保存しながら作業していく形になります。Ctrl + sが便利です。

多々のウェブサイトでは、コンパイルされた証として、

a.exeと表示されると書かれていました。

それは dir とか dir *.exe とか叩いた場合かと。

コードの書き方について

teratailには、コードを見やすく表示する機能があります。
質問編集画面を開き、コードを選択した状態で<code>ボタンを押してください。
C

投稿2019/01/25 00:07

編集2019/01/25 00:22
LouiS0616

総合スコア35658

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jack_kanzaki

2019/01/25 01:12

なるほど、自動保存されていないだけのようでした。 ご指摘、ありがとうございます。 また、「gcc hello.c」と入力したところ、 PS C:\vscode> gcc hello.c PS C:\vscode> ターミナルにはこのように表示されました。 この場合、二行目はどういった状況にあるのでしょうか。
LouiS0616

2019/01/25 01:14

gccを叩いて何も表示されないということは、支障なくコンパイルできています。
jack_kanzaki

2019/01/25 01:16

度々の質問すみません。 「gcc ファイル名」というのは、どういった場合に今後プログラミングで使うのでしょうか。
LouiS0616

2019/01/25 06:05

C言語のソースファイルをコンパイル及びリンクする場合です。 数々のオプションがありますが、当面は次の形だけ覚えておけば良いでしょう。 gcc ファイル名 -o 実行ファイル名 -Wall -Wextra 例えば gcc hello.c -o hello -Wall -Wextra と叩くと、hello.cをコンパイルし、hello.exeが作られます。 -Wall と -Wextra は警告を表示するためのオプションです。
jack_kanzaki

2019/01/27 23:48

返信遅くなりました。 なるほど、わかりました。 どうもありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問