Saya sedang mempelajari pembangunan pelayan web Linux baru-baru ini, dan saya perlu menyahpepijat kod C/C saya sendiri di bawah Linux, tetapi Linux tidak semudah Visio Studio atau persekitaran pembangunan bersepadu lain di bawah Windows , agak menyusahkan untuk dibangunkan di bawah Linux sekarang. Jadi anda boleh mempertimbangkan untuk menggunakan VScode untuk pembangunan jauh. Walau bagaimanapun, banyak tutorial di Internet tidak begitu jelas Setelah mencuba banyak tutorial, saya menghadapi banyak masalah Ringkasan akhir adalah seperti berikut. [Pembelajaran yang disyorkan: "Tutorial vscode"]
Sistem jauh: ubuntu18.04 (mesin maya)
Hos pembangunan: windows10
(1) Pasang perisian yang diperlukan: ssh (komunikasi sistem), gdb , gsdbserver (penyahpepijatan kod):
sudo apt-get install openssh-server sudo apt-get install gdb sudo apt-get install gdbserver
(2) Cipta folder ujian dan fail
Nota:
cd ~/桌面 mkdir testvs cd testvs touch main.cpp gedit main.cpp
Kod utama.cpp ialah:
#include <stdio.h> int main() { int a = 1; printf("hello world\n"); getchar(); return 0; }</stdio.h>
(3) Susun dan dapatkan fail boleh laku
g main.cpp -o main -g
Nota:
(4 ) Mulakan gdbserver
(4.1) Mula-mula lihat alamat ip sistem ubuntu anda:
hostname -I
Anda boleh mendapatkan alamat ip tempatan sebagai 192.168.199.131
(4.2) Mulakan gdbserver (beri perhatian kepada menukar alamat ip dan direktori fail ujian)
gdbserver 192.168.199.131:2000 ~/桌面/testvs/main
(1) Mula-mula pasang pemalam berikut dalam VScode :
(2) ssh remote Sambung ke
di penjuru kiri sebelah bawah "Pengurusan" -> "Panel Kawalan", kemudian cari pilihan "Remote-SSH: Connect to Host..." -> Tambah Hos SSH Baharu.. .
Masukkan alamat IP sistem ubuntu, dan antara muka baharu akan muncul
Masukkan kata laluan sistem ubuntu dalam kotak merah Jika alamat IP hijau dipaparkan di sudut kiri bawah, sambungan berjaya, seperti yang ditunjukkan di bawah.
(3) Buka fail ujian
Buka folder-> direktori , klik butang "OK"
dan pilih sambungan C/C, "Pasang dalam SSH:XXX". Perkara yang sama berlaku untuk Pek Sambungan C/C
Kemudian mulakan semula Vscode dan gdbserver dalam Ubuntu (ia mesti dimulakan semula, jika tidak ralat akan dilaporkan dalam langkah seterusnya) dan laksanakan semula proses sambungan jauh di atas.
(4) Tetapkan fail konfigurasi
(4.1) Konfigurasi tasks.json
daripada Pilih Terminal>Konfigurasikan Tugasan Binaan Lalai dalam bar menu, pilih C/C dalam bar lungsur: g bina fail aktif Kemudian jana fail tasks.json dan gantikan kandungan dengan:
{ // 有关 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", //删除过程不切换终端(专注程序输出) } } ] }
. (4.2 )Konfigurasikan launch.json
Pilih Nyahpepijat>Tambah Konfigurasi dalam bar menu, pilih C (GDB/LLDB), pilih g bina dan nyahpepijat fail aktif dalam bar lungsur . Hasilkan launch.json dan tukar kandungan Untuk:
{ // 使用 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" } ] }
Nyahpepijat dan jalankan di bawah main.cpp
Untuk pengetahuan lanjut tentang VSCode, sila lawati:tutorial asas vscode!
Atas ialah kandungan terperinci Penjelasan konfigurasi terperinci: penyahpepijatan jauh c dalam vscode. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!