Yokogi
@Yokogi

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

VScodedeでC++のデバックができない

解決したいこと

Atcoderを始めるために、「c++」を学び始めた初学者です。

VScodeでc++を実行してみようと思い、こちらの記事を参考に環境構築しました。https://www.freecodecamp.org/news/how-to-install-c-and-cpp-compiler-on-windows/

さっそく、コードを実行するとエラーが出たので質問させていただきました。

発生している問題・エラー

preLaunch'c/c++: gcc.exe アクティブなファイルのビルド’が終了コード-1で終了しました。

ターミナル プロセスが終了コード -1 で終了しました。

ターミナルはタスクで再利用されます、閉じるには任意のキーを押してください。

下記の画像の通りです。
スクリーンショット (2).png

自分で試したこと

検索しても有益な情報が見つからず、手の付けようがありません。
初学者でも分かるように回答して頂けると嬉しいです。

1

5Answer

実際のエラーの内容を示しているのは cannot open output file ... No such file or directory の部分です。ビルドの出力先ファイルが存在しないと言っています。ファイルパスが文字化けしていることから、パスに含まれる日本語をうまく扱えていないことが推測できます。

フォルダ名とファイル名が半角英数字だけで構成されるようにソースファイルを移動して再度試してください。

2Like

Comments

  1. @Yokogi

    Questioner

    ありがとうございます。回答してくださった内容で確認しましたが、再度エラーが発生してしまいました。

  2. 同じように cannot open output file ... No such file or directory エラーが出るということで合っていますか?

2022/2/22の古い記事より、もっと最近の記事を参考にした方がよいと思います。

例えば、↓ 2024/6/25 とか

1Like

Comments

  1. @Yokogi

    Questioner

    ありがとうございます!
    仕切り直して、その記事通りにやってみましたが、コマンドプロンプトで「gcc --vesion」と実行すると「認識されていません…」と表示されました。

  2. コマンドプロンプトで「gcc --vesion」と実行すると「認識されていません…」と表示されました。

    VSCode内のターミナルでgcc --vesionを実行しても同じエラーでしょうか?
    スクショを貼ってもらえますか?

    なお、Qitta記事を参考にしたのなら、その記事にコメントすれば、著者さんから直接アドバイスがもらえると思います。

  3. ↓こちらのQ&Aにある方法で環境を作るのも有りかと思います。

  4. @Yokogi

    Questioner

    再度、最新の記事を参考に構築すると、「gcc --vesion」も正しく表示されました!しかし、VScodeで簡単なコードを実行すると、また同じ画面になりました。文字化けが原因かと思い、こちらを参考にhttps://qiita.com/Necko/questions/28870734a33606a6e521
    コマンドでchcp 65001と入力しUTF-8モードしました。すると、この画面のなりました。もし、よろしければご指摘頂けると嬉しいです。スクリーンショット (3).png

  5. error: '::main' must return 'int'

    「main関数はintを返す必要がある」というエラーです。

    以下のように書き換えてみてください。

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

まずQiitaの記事を見てインストールするのをオススメしません。

本家のページを見てインストールと設定をしましょう。どうしても分からなくて記事を参考にしたいなら、本家のページにリンクしている記事を探してください。

https://code.visualstudio.com/docs
https://code.visualstudio.com/docs/languages/cpp
https://code.visualstudio.com/docs/cpp/config-mingw


今Windowsをつかってないので確認できませんが、何となく、MSYS2 MinGW x64を使ってませんか?
MSYS2 UCRT x64がVCのランタイムが新しいので(MinGW x64はとても古いのを使う)、理由がなければUCRTを使った方がいいです。

1Like

Visual Studio 2022 Community を使うという選択肢はないのでしょうか?

質問者さんが参考にしているサイトにあるような、とても初心者向けとは思えない環境構築をしなくても、Visual Studio ならインストールしてワークロードを追加するだけで、

workload.jpg

動くようになるはずです。

debug.jpg

result.jpg

どうしても VS Code を使わなければならない理由があるということでしたら失礼しました。上のレスは忘れてください。

1Like

ファイル名をローマ字に変えて、少し手を加えると正常に実行できました。
回答していただいた方々、ありがとうございました。

0Like

Your answer might help someone💌