1. ホーム
  2. Other

VSCodeコンフィグレーションc++環境(ホワイトチュートリアル)

2022-02-14 10:24:33
<パス

VSCodeの設定の過程でいろいろと問題が発生したので、ここに記録し、より多くの方のお役に立てればと思います。

<ブロッククオート

VSCodeを完全にアンインストールして再インストールする必要がある場合は このチュートリアル

c++の環境設定

前文


  • 私の環境 Windows 10 64ビット
  • VSCodeはやはり使い勝手がよく、高速に動作し、システムリソースをほとんど消費せず、プラグインも豊富です

ソフトウェアのインストール


1. MinGW-w64のダウンロードとインストール、環境変数の設定

<ブロッククオート

MinGW:複数のコンパイル環境を含み、その一部を自由に選択してインストールできるソフトウェアと理解できる。

  • ダウンロードはこちら: https://osdn.net/projects/mingw/downloads/68260/mingw-get-setup.exe/
    ポップアップウィンドウから直接ダウンロードすることができ、ダウンロード後は以下のチュートリアルに従ってインストールと設定を行うことができます。

インストールに失敗した人が多かったので、MinGWのインストールファイルを以下のリンク先のウェブドライブに置きました。
リンク: https://pan.baidu.com/s/1hng1o1ruDn11JlnQBq7xaw
抽出コード: r823

  • インストール

    インストール完了後のインターフェイス

  • 関連ファイルのダウンロード(重要なステップ)

    MinGWを開き、コンパイラソフトを確認する

    • mingw32-gcc.bin (c言語ファイルコンパイラ)
    • mingw32-gcc-g++.bin (c++言語用コンパイラ)
    • mingw32-gdb.bin (デバッグ用コンパイル済みファイル)
<ブロッククオート

インストール中に "xxx library not found" というエラーが発生した場合、このライブラリと dll ファイルを再度確認することができます。


選択後 インストールと変更 をクリックし、インストールが完了するのを待ちます。

について mingw32-gdb.bin 必要な3つのファイルをネットワークドライブに置き、ダウンロードした後、ダウンロードに成功しなかった対応するファイルを MinGW\bin ディレクトリにある場合、そのリンクは以下のようになります。
リンク: https://pan.baidu.com/s/1ZJFnR_MRkOTeufjKO4dLnw
抽出コード 18rx

  • 環境変数の追加
    • 右クリック マイコンピュータ をクリックします。 属性

    • をクリックします。 システムの詳細設定

    • をクリックします。 環境変数

    • でシステム変数を選択します。 パス その 新規

    • その ビンアドレス を環境変数に追加します(私のは "D:\MinGWbin" )。

    • インストールに成功したかどうかを確認するには、コマンドプロンプトで次のように入力します。 gcc -v バージョン番号が表示されれば、インストールは成功です。

2. VSCodeのダウンロードとインストール


  • ダウンロードはこちら: https://code.visualstudio.com/Download

コンフィギュレーション処理

1. VSCodeプラグインのインストール


インストールが完了したら、ソフトを開く

  • 中国語プラグインをダウンロードする

  • ダウンロード c/c++ プラグイン

    プラグインインストール後 再起動 VSCode

2. ワークスペースの作成


  • 新規フォルダの作成(c++コードファイル用)
  • ファイルをクリックして、作成したフォルダを開く(ショートカット Ctrl+k Ctrl+O)

3. 設定ファイル


  • このフォルダーに新しい.vscodeフォルダーを作成します。

  • .vscodeフォルダーに3つのファイルを新規に作成します。

    • c_cpp_properties.json
    • launch.json
    • タスク.json
  • 次のコードをファイルにコピーしてください。

    インストール先に応じてファイルパスを変更してください。

    • c_cpp_properties.json

      includePathはcmdでgcc -v -E -x c++ -と入力することで得られます。


      修正 "includePath"。 "Path"
      パスを画像にある次の行に置き換えるだけです。

      d:/mingw/include/**" このパスは、あなたのパスに応じて追加することができます。

    {
        "configurations": [
            {
                "name": "Win32",
                "includePath": [
                    "${workspaceRoot}",
                    "d:/mingw/include/**",
                    "d:/mingw/bin/.. /lib/gcc/mingw32/8.2.0/include/c++",
                    "d:/mingw/bin/... /lib/gcc/mingw32/8.2.0/include/c++/mingw32",
                    "d:/mingw/bin/.. /lib/gcc/mingw32/8.2.0/include/c++/backward",
                    "d:/mingw/bin/... /lib/gcc/mingw32/8.2.0/include",
                    "d:/mingw/bin/... /lib/gcc/mingw32/8.2.0/... /... /... /... /include",
                    "d:/mingw/bin/... /lib/gcc/mingw32/8.2.0/include-fixed"
                ],
                "defines": [
                    "_DEBUG",
                    "UNICODE",
                    "__GNUC__=6",
                    "__cdecl=__attribute__((__cdecl__))"
                ],
                "intelliSenseMode": "msvc-x64",
                "browse": {
                    "limitSymbolsToIncludedHeaders": true,
                    "databaseFilename": "",
                    "path": [
                        "${workspaceRoot}",
                        "d:/mingw/include/**",
                        "d:/mingw/bin/.. /lib/gcc/mingw32/8.2.0/include/c++",
                        "d:/mingw/bin/... /lib/gcc/mingw32/8.2.0/include/c++/mingw32",
                        "d:/mingw/bin/.. /lib/gcc/mingw32/8.2.0/include/c++/backward",
                        "d:/mingw/bin/... /lib/gcc/mingw32/8.2.0/include",
                        "d:/mingw/bin/... /lib/gcc/mingw32/8.2.0/... /... /... /... /include",
                        "d:/mingw/bin/... /lib/gcc/mingw32/8.2.0/include-fixed"
                    ]
                }
            }
        ],
        "version": 4
    }
    
    
    
    
    
    • launch.json
      パスに応じて変更する "miDebuggerPath"
    {  
        "version": "0.2.0",  
        "configurations": [  
            {  
                "name": "(gdb) Launch", // Configuration name that will be displayed in the launch configuration dropdown  
                "type": "cppdbg", // Configure the type, here it can only be cppdbg  
                "request": "launch", // request configuration type, can be launch or attach  
                "program": "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe",// The path to the program to be debugged  
                "args": [], // command line arguments passed to the program when debugging, usually set to null  
                "stopAtEntry": false, // If set to true, the program will pause at the program entry, usually set to false  
                "cwd": "${workspaceFolder}", // the working directory when debugging the program, usually ${workspaceFolder}, the directory where the code is located  
                "environment": [],  
                "externalConsole": true, // whether to show the console window when debugging, usually set to true to show the console  
                "MIMode": "gdb",  
                "miDebuggerPath": "D:/MinGW/bin/gdb.exe", // path to miDebugger, note that here to correspond with the path of MinGw  
                "preLaunchTask": "g++", // the task to be executed before the debugging session starts, usually for compiled programs, c++ for g++, c for gcc  
                "setupCommands": [  
                    {   
    		    "description": "Enable pretty-printing for gdb",  
                        "text": "-enable-pretty-printing",  
                        "ignoreFailures": true  
                    }  
                ]  
            }  
        ]  
    }
    
    
    
    • タスク.json
      修正せずにそのままコピー&ペースト
    <ブロッククオート

      ちなみに私はここでexeのパスを変更しました。args"で、自分で変更できますが、ここでは、コンパイルしたexeファイルを別のexeフォルダに入れました

    {
        "version": "2.0.0",
        "command": "g++",
        "args": [
            "-g",
            "${file}",
            "-o",
            "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe"
        ], // Compile command parameters
        "problemMatcher": {
            "owner": "cpp",
            "fileLocation": [
                "relative",
                "\\"
            ],
            "pattern": {
                "regexp": "^(. *):(\\d+):(\\\d+):\\\s+(warning|error):\\\s+(. *)$",
                "file": 1,
                "line": 2,
                "column": 3,
                "severity": 4,
                "message": 5
            }
        }
    }
    
    
    

以下はその説明です。 args をカスタムで exe ファイルのパスを指定します。
${workspaceFolder}: 現在のワークスペース・パス
exeを使用します。自作フォルダ
ファイルベース名NoExtension}: 現在のファイルのファイル名、NoExtensionは接尾辞なしを意味し、現在のexeファイル、すなわちコンパイルされたexeファイルである.exeを追加します。
上記のパスを合わせると、コンパイルしたexeファイルがexeフォルダに置かれることになりますが、この設定を外すと、デフォルトでコンパイルしたexeファイルが現在の作業パスの下に置かれることになります。

<ブロッククオート

ところで、vscodeのいくつかの変数にはどんな意味があるのでしょうか?
${workspaceFolder} :現在のワークスペースのフォルダパス、つまり /home/Coding/Test を意味します。
workspaceRootFolderName}:ワークスペースのフォルダ名、つまりTestを表します。
${file}:ファイル自体の絶対パス、すなわち、/home/Coding/Test/.vscode/tasks.jsonです。
${relativeFile}:ワークスペース内のファイル(例:.vscode/tasks.json)へのパス
fileBasenameNoExtension}:現在のファイルのファイル名(拡張子なし)、つまり、タスク。
${fileBasename}: 現在のファイルのファイル名, tasks.json
${fileDirname}: ファイルがあるフォルダのパス、例:/home/Coding/Test/.vscode
fileExtname}:現在のファイルの接尾辞(例: .json)。
${lineNumber}:カーソルがある現在のファイルの行番号
env:PATH}:システム内の環境変数

4.テスト


  • cppファイルを新規に作成する
  • F5 コンパイル、成功

バックオーダー

VSCodeのためのいくつかの良いプラグイン


  • Bracket Pair Colorizer -- 一致する括弧ごとに異なる色のハイライトを提供します。

  • Markdown All in one -- Markdownを書くための最高のツール

  • パスインテリジェンス -- パスの自動補完

  • vscode-icons -- アイコンプラグイン

VSCode 背景画像の変更

  • から 管理者権限 VSCodeを起動し、インストールする 背景 プラグイン
    Ctrl+Pで検索ボックスを開き、settings.jsonと入力します。

  • 設定.json

    {
        "editor.fontSize": 20,
        "editor.mouseWheelZoom": true,
        "window.zoomLevel": 0,
        "files.autoGuessEncoding": true,
    
        // background-related configuration
        "update.enableWindowsBackgroundUpdates": true,
        "background.customImages": [
            "file:///D:/vscode/vscode_bg/bg.png" // image address
        ],
        "background.style": {
            "content":"''",
            "pointer-events":"none",
            "position":"absolute", // image position
            "width":"100%",
            "height":"100%",
            "z-index":"999999",
            "background.repeat":"no-repeat",
            "background-size":"25%,25%", // image size
            "opacity":0.2 // transparency
        },
        "background.useFront": true,
        "background.useDefault": false,
        "workbench.iconTheme": "vscode-icons-mac", // whether to use the default image
    }
    
    
    
    

    画像のアドレスを変更するだけ
    これは私の背景画像です ?

VSCode set mouse scroll to change font size フォントサイズを設定する。

  • settings.jsonに追加 "editor.mouseWheelZoom": true 以上、上記で追加したのは Ctrl+マウスホイール でフォントの拡大・縮小ができます

熱心な学生さんが書いた記事で、以下を参考にしてください。 VSCode構成c++環境(ホワイトチュートリアル)フォローアップ質問まとめ:g++:fatal error: -fuse-linker-plugin, but liblto_plugin-0.dll not found

<ブロッククオート

この記事が少しでもあなたのお役に立てたのなら、その前に「いいね!」をお願いします。