最近、Linux ウェブサーバー開発を学習しており、Linux で独自の C/C コードをデバッグする必要があります。しかし、Linux は、Windows で直接 Visio Studio やその他の統合開発環境を使用するほど便利ではありません。 . 、今Linuxで開発するのはかなり面倒です。したがって、リモート開発には VScode の使用を検討できます。しかし、インターネット上にあるチュートリアルはわかりにくいものが多く、いろいろ試した結果、多くの落とし穴に遭遇しました。 [推奨学習: "vscode チュートリアル "]
リモート システム: ubuntu18.04 (仮想マシン)
開発ホスト:windows10
(1) 必要なソフトウェアのインストール:ssh(システム通信)、gdb 、gsdbserver (コード デバッグ):
sudo apt-get install openssh-server sudo apt-get install gdb sudo apt-get install gdbserver
(2) テスト フォルダーとファイルの作成
# #Note :
cd ~/桌面 mkdir testvs cd testvs touch main.cpp gedit main.cpp
main.cpp コードは次のとおりです:
#include <stdio.h> int main() { int a = 1; printf("hello world\n"); getchar(); return 0; }</stdio.h>
(3 ) コンパイルして実行可能ファイルを取得します
##g main.cpp -o main -g注:
(4) gdbserver# を起動します
##(4.1) まず、ubuntu システムの IP アドレスを確認します:hostname -I
ローカル IP アドレスは 192.168.199.131
gdbserver 192.168.199.131:2000 ~/Desktop/testvs/main
(1) まず、VScode に次のプラグインをインストールします:
C/C#左下隅の [管理] -> [コントロール パネル] で、オプション [リモート SSH: ホストに接続...] -> 新しい SSH ホストの追加... ubuntu システムの IP アドレスを入力すると、新しいインターフェイスが表示されます
赤いボックスに ubuntu システムのパスワードを入力します。緑色の IP アドレスが左下隅に表示されれば、接続は成功です。 、以下に示すように。
(3) テストファイルを開く
フォルダを開く→テストフォルダを選択ディレクトリに移動し、[OK] ボタンをクリックします。
C/C 拡張機能を選択し、[SSH:XXX にインストール] を選択します。 C/C Extension Pack も同様です。次に、Ubuntu で Vscode と gdbserver を再起動し (再起動する必要があります。再起動しないと、次の手順でエラーが報告されます)、上記のリモート接続プロセスを再実行します。
(4) 設定ファイルの設定
(4.1)tasks.jsonの設定
メニュー バーの [ターミナルの選択] > [デフォルトのビルド タスクの構成] から、ドロップダウン バーで [C/C] を選択します: g アクティブ ファイルをビルドします。次に、tasks.json ファイルを生成し、内容を次のように置き換えます:{ // 有关 tasks.json 格式的文档,请参见 // https://go.microsoft.com/fwlink/?LinkId=733558 "version": "2.0.0", "tasks": [ { "type": "shell", "label": "g++ build active file", "command": "/usr/bin/g++", "args": [ "-std=c++11", "-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}" ], "options": { "cwd": "/usr/bin" }, "problemMatcher": [ "$gcc" ], "group": { "kind": "build", "isDefault": true } }, { //删除二进制文件 "type": "shell", "label": "delete output file", "command": "rm", "args": [ "${fileDirname}/${fileBasenameNoExtension}" ], "presentation": { "reveal": "silent", //删除过程不切换终端(专注程序输出) } } ] }
{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "g++ build and debug active file", "type": "cppdbg", "request": "launch", "program": "${fileDirname}/${fileBasenameNoExtension}", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "为 gdb 启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "g++ build active file", "postDebugTask": "delete output file", "miDebuggerPath": "/usr/bin/gdb" } ] }
vscode 基本チュートリアル
を参照してください。以上が詳細な設定の説明: vscode での C++ のリモート デバッグの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。