VSCode+CMake+Clang+GCC 環境構築チュートリアル (Win10 の場合)

VSCode+CMake+Clang+GCC 環境構築チュートリアル (Win10 の場合)

大学院入試に備えて、C/C++ を使って基本的なデータ構造とアルゴリズムを実装する予定です。アルゴリズムとデータ構造を実装したいだけなので、VisualStudio は使いたくありません。VSCode が良いと思うので、オンラインでいくつかのチュートリアルを見つけて、自分のニーズに合わせて開発環境を構成しました。

ソフトウェアをインストールする

CMake

CMake は、ビルド プロセスを記述するために CMakeLists.txt というファイルを使用するクロスプラットフォームの自動ビルド システムです。

公式サイトからダウンロードしてインストールするだけで簡単に使用できます。

インストールディレクトリ内の bin ファイルをシステム環境変数に追加することを忘れないでください。これはインストール中に確認できます。確認した場合は、自分で追加する必要はありません。

インストールが成功したかどうかを確認します。


ミンGW

MinGW は、Minimalist GNU For Windows の略です。これは、GNU 開発ツールを Win32 プラットフォームに移植した製品であり、Windows 上の GNU ツールのセットです。簡単に言えば、MinGW はコンパイル環境であり、Linux の GCC に相当します。

公式サイトのダウンロードリンク;

インストール後、インストール ディレクトリ内の bin フォルダーのパスを環境変数に追加します。

カラン

GCC に似たコンパイラで、その目的は GCC を廃止することです (インターネットで誰かがそう言っているのを見ました)。

ウィキペディア:

Clang(英語のclang[1]のように/ˈklæŋ/と発音される)は、C、C++、Objective-C、Objective-C++プログラミング言語用のコンパイラフロントエンドです。バックエンドには LLVM を使用しており、LLVM2.6 以降では新しいバージョンが同時にリリースされます。その目標は、GNU コンパイラ コレクション (GCC) の代替品を提供することであり、GNU コンパイラのコンパイル設定のほとんどと非公式の言語拡張をサポートします。作者は Chris Lattner 氏で、開発は Apple 社が後援し、ソースコードは BSD に似たイリノイ大学アーバナ・シャンペーン校のオープンソース ライセンスの下でライセンスされています。

VSCode で使用してスマートプロンプトを提供できます。

公式サイトをダウンロード

確実なインストールのために、インストール後に、インストール ディレクトリの下の bin フォルダーのパスを環境変数に追加します。


VSCodeプラグインをインストールする

図に示すように、図のプラグインをインストールします。

新しいフォルダを作成してコーディングを開始する

メイン

#include <iostream>

名前空間 std を使用します。

int main(int argc, char* argv[])
{
 整数a = 89;
 b = a++;
 char buf[10] ;
 cout << "a = " << a << endl;
 cout << "b = " << b << endl;
 cout << "こんにちは...";
 cin.get(); //画面の点滅を防ぐ return 0;
}

CMakeList.txt

cmake_minimum_required(バージョン 3.11)

プロジェクト(VSCode_Cpp_CMake)
# コードパス aux_source_directory(.DIR_TOOT_SRCS)
# デバッグモードを設定 (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
# 実行可能ファイルを生成する add_executable(VSCode_Cpp_CMake ${DIR_TOOT_SRCS})

c_cpp_properties.json を設定する

キーボードの押下: ctrl+shift+p


{
 「構成」: [
  {
   "名前": "CMake",
   "includePath": [
    "${ワークスペースフォルダー}/**"
   ]、
   「定義」: [
    "_デバッグ"、
    「ユニコード」、
    「_UNICODE」
   ]、
   "windowsSdkバージョン": "10.0.18362.0",
   "compilerPath": "C:/MinGW/bin/g++.exe", // 独自のインストールディレクトリに従って決定します "cStandard": "c11",
   "cppStandard": "c++17",
   "intelliSenseMode": "clang-x64", // 変更に注意してください。インテリジェントなプロンプトを提供します "configurationProvider": "vector-of-bool.cmake-tools"
  }
 ]、
 「バージョン」: 4
}

CMake を設定する

ショートカットキーを押す: ctrl+shift+p

以下の手順に従ってください。



ここで操作が完了したら、コンパイルして exe ファイルを生成できます。


デバッグファイルlaunch.jsonとtask.jsonを構成する

デバッグには gdb を使用します。

ショートカット: F5 -> C++ (GDB/LLDB) -> g++.exe build and debug actvive file

vscodeはデフォルトのlaunch.jsonとtask.jsonを自動的に生成します。

launch.json と task.json を編集し、コメントされた領域をすべて変更する必要があることに注意してください。

タスク.json

{
 「タスク」: [
  {
   "タイプ": "シェル",
   "label": "cmake build active file", // タスク名 "command": "cmake --build ${workspaceFolder}\\build --config Debug --target all -- -j 10", // CMake の指示 "args": [
   ], // コマンドパラメータ "options": {
    "cwd": "C:/MinGW/bin"
   }
  }
 ]、
 "バージョン": "2.0.0"
}

起動.json

{
 // IntelliSense を使用して、可能な属性について学習します。
 // マウスをホバーすると、既存の属性の説明が表示されます。
 // 詳細については、https://go.microsoft.com/fwlink/?linkid=830387 をご覧ください。
 "バージョン": "0.2.0",
 「構成」: [
  {
   "name": "(gdb) Launch", // デフォルト: g++.exe ビルドとデバッグのアクティブ ファイル
   "タイプ": "cppdbg",
   「リクエスト」: 「起動」、
   "program": "${workspaceFolder}\\build\\Demo.exe", // 実行可能ファイルが配置されているパス、Demo= は独自の項目に置き換えられます "args": [],
   "stopAtEntry": false,
   "cwd": "${ワークスペースフォルダー}",
   "環境": []、
   "externalConsole": true, // 独立したコンソールウィンドウを表示します "MIMode": "gdb",
   "miDebuggerPath": "C:\\MinGW\\bin\\gdb.exe",
   「セットアップコマンド」: [
    {
     "description": "gdb のプリティープリントを有効にする",
     "テキスト": "-enable-pretty-printing",
     "失敗を無視": true
    }
   ]、
   "preLaunchTask": "cmake build active file" // task.json で定義された cmake コンパイル タスクを実行します}
 ]
}

コンパイルとデバッグ

コンパイルショートカットキー: F7
デバッグショートカットキー: F5

要約する

上記は、エディターが紹介したwin10でのVSCode+CMake+Clang+GCC環境構築のチュートリアル図です。皆様のお役に立てれば幸いです。ご質問があれば、メッセージを残してください。エディターがすぐに返信します。

以下もご興味があるかもしれません:
  • TensorFlow + VScode 開発環境をゼロから構築する手順 (画像とテキスト)
  • Anaconda + vscode + pytorch環境構築プロセスの詳細な説明
  • VScodeエディタのvue環境の設定で発生する問題の解決策の詳細な説明
  • Pico を使用して Micropython ファームウェアをフラッシュし、VsCode 開発環境を構成する方法

<<:  データベースSQL文の最適化

>>:  ノードイベントループとメッセージキューの分析

推薦する

ダウンロードにおすすめの氷と雪のフォント 33 種類 (個人用および商用)

01 ウィンターフレーク(個人のみ) 02 スノートップキャップ(業務用) 03 モディウス「フリ...

Windows 10 での MySQL 5.7.21 インストーラのインストール グラフィック チュートリアル

MySQLをインストールしてメモしておきます。うまくインストールできるか分かりませんが、試してみます...

Dockerコアとインストールの具体的な使い方

1. Docker とは何ですか? (1)DockerはLinuxコンテナ内でアプリケーションを実行...

Linux でタスク用のカスタム システム トレイ インジケーターを作成する

システム トレイ アイコンは、今日でも魔法のような機能です。アイコンを右クリックして目的のアクション...

ページング効果を実現するNode+Express

この記事では、ページング効果表示を実現するためのnode+expressの具体的なコードを参考までに...

xtrabackup による MySQL データベースのバックアップと復元

mysqldump バックアップは、その独自の特性 (テーブルのロック、基本的に挿入スクリプトまたは...

Vueは買い物数量を変更できるショッピングカートを実装します

この記事では、Vueを使用してショッピングカートの数量を変更する方法を紹介します。具体的な内容は次の...

Docker プルタイムアウトの解決策

最近、Docker イメージのプルが非常に不安定です。遅く、タイムアウトすることがよくあります。 x...

TypeScript の条件型に関する詳細な読書と実践記録

目次ジェネリック型での条件型の使用ツールタイプ脱出ポッド矢印関数で条件型を使用する型推論による条件型...

MySQLで重複データを削除する詳細な例

MySQLで重複データを削除する詳細な例重複レコードには 2 つの意味があります。1 つは完全に重複...

Linux で cmake を使用して MySQL をコンパイルおよびインストールするための詳細なチュートリアル

1. cmakeをインストールする1. cmakeの圧縮パッケージを解凍する [root@mysql...

初心者向けのMySQLデータベースとテーブルDDLの作成と操作の学習

目次1. データベースを操作する1.1 データベースを作成する1.2 データベースをクエリする1.3...

VMWare14.0.0のUbuntu仮想マシンで共有フォルダを設定する

これは私の最初のブログ投稿です。時間の制約があるため、どのようにフォーマットすればよいかわかりません...

Vueはカスタム命令を使用してページの下部に透かしを追加します

プロジェクトシナリオプロジェクトの背景全体にカスタム透かしを追加します。透かしのテキスト、フォントの...

IE6かどうかを判定する最短JS(IEの書き方)

ブラウザが IE のどのバージョンであるかを検出するためによく使用される JavaScript コー...