WSL2 Windows 10 su VM e debugger

Domande e richieste di un principiante alle prime armi con Ubuntu e il mondo GNU/Linux in generale. Per domande specifiche, utilizzare le altre sezioni.
Regole della sezione
In questa sezione possono inserire nuove discussioni solo coloro che fanno parte del livello "Prode Principiante" e che non hanno superato i 100 messaggi, tutti gli altri possono comunque rispondere regolarmente. Se si fa parte di questo livello e si è registrati al forum prima del 24 aprile 2012, data del passaggio al nuovo forum, consultare questa discussione.

Immagine Come usare UbuntuPrimi passi su Ubuntu Immagine Amministrazione del sistemaComandi di baseInstallare programmiLog di sistemaRiga di comandoSudo
Scrivi risposta
Jackie98
Prode Principiante
Messaggi: 5
Iscrizione: domenica 5 marzo 2023, 18:46

WSL2 Windows 10 su VM e debugger

Messaggio da Jackie98 »

Ciao a tutti
Ho installato un mese fa Ubuntu sulla mia macchina virtuale (VMware) in ambiente Windows 10, con non poche tribolazioni per avviare installare WSL2.
In questi giorni ho deciso di installare sulla vm Visual Studio code, per compilare e debuggare piccoli progetti di C++.
Funziona tutto bene, tranne il debugger.
Se avvio il prompt dei comandi di Linux, con il comando "whereis gdb", ottengo il percorso e ho provato a fare tutti gli update del caso, ma quando provo ad avviare con F5 la compilazione va a buon fine, ma il debug non parte. Ho provato a configurare il file launch.json aggiungendo le configurazioni "Associa, avvio pipe, collegamento pipe, launch" e anche le variabili sono impostate come nella guida https://code.visualstudio.com/docs/cpp/config-wsl.
Quanlcuno mi sa dare delle dritte? CI sono variabili d'ambiente che devo aggiungere?
Grazie mille a tutti
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5394
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: WSL2 Windows 10 su VM e debugger

Messaggio da GjMan78 »

Non mi è chiara una cosa.

Correggimi se sbaglio: hai un sistema host con Windows 10, all'interno del quale hai installato Ubuntu in una VM Vmware.
Mi sfugge a cosa serva WSL2 a questo punto...
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
korda
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1703
Iscrizione: giovedì 24 dicembre 2020, 15:58

Re: WSL2 Windows 10 su VM e debugger

Messaggio da korda »

GjMan78 ha scritto:
domenica 5 marzo 2023, 19:12
Non mi è chiara una cosa.

Correggimi se sbaglio: hai un sistema host con Windows 10, all'interno del quale hai installato Ubuntu in una VM Vmware.
Mi sfugge a cosa serva WSL2 a questo punto...
Mi sfugge una seconda cosa: se la tua macchina host è già Windows 10 perché hai installato VScode su una vm Linux???
Io non sono Bagheera né Akela, io non frequento la Rupe.
Io sono Kaa: faccio ballare le scimmie alle Tane Fredde.
Jackie98
Prode Principiante
Messaggi: 5
Iscrizione: domenica 5 marzo 2023, 18:46

Re: WSL2 Windows 10 su VM e debugger

Messaggio da Jackie98 »

Non mi sono espessa bene: la mia macchina host è Windows 11, la guest su VMware è Windows 10 ed è su questa che ho installato wsl2 e visual studio code per utilizzare un ide in ambiente Windows che mi permettesse di compilare su Linux in modo teoricamente più facile.
Lo so che è un giro immane, ma all'università volevano che facessi così, per cui...
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5394
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: WSL2 Windows 10 su VM e debugger

Messaggio da GjMan78 »

Jackie98 ha scritto:
lunedì 6 marzo 2023, 8:27
la mia macchina host è Windows 11, la guest su VMware è Windows 10 ed è su questa che ho installato wsl2
Tripla virtualizzazione carpiata con avvitamento!

A parte tutto potevi utilizzare wsl2 direttamente da Windows 11, ti saresti risparmiato un layer di virtualizzazione con buona pace del processore.

Anyway... puoi mostrare il contenuto dei file tasks.json e launch.json?

Metti i listati tra i tag CODE usando l'editor completo per favorirne la leggibilità.

Immagine
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Jackie98
Prode Principiante
Messaggi: 5
Iscrizione: domenica 5 marzo 2023, 18:46

Re: WSL2 Windows 10 su VM e debugger

Messaggio da Jackie98 »

Specifico che se premo F5, mi compare un menù a tendina con la scritta "Scegliere il processo a cui collegarsi" ma nell'elenco non c'è l'opzione "g++...".
Launch.json

Codice: Seleziona tutto

    {
        "name": "C++ Launch",
        "type": "cppdbg",
        "request": "launch",
        "program": "${workspaceFolder}/a.out",
        "stopAtEntry": false,
        "customLaunchSetupCommands": [
          { "text": "target-run", "description": "run target", "ignoreFailures": false }
        ],
        "launchCompleteCommand": "exec-run",
        "linux": {
          "MIMode": "gdb",
          "miDebuggerPath": "/usr/bin/gdb"
        },
        "osx": {
          "MIMode": "lldb"
        },
        "windows": {
          "MIMode": "gdb",
          "miDebuggerPath": "C:\\MinGw\\bin\\gdb.exe"
        },
        "configurations": [
            {
                "name": "(gdb) Launch",
                "type": "cppdbg",
                "request": "launch",
                "program": "${workspaceFolder}/a.out",
                "args": [],
                "stopAtEntry": false,
                "cwd": "${fileDirname}",
                "environment": [],
                "externalConsole": false,
                "MIMode": "gdb",
                "setupCommands": [
                    {
                        "description": "Abilita la riformattazione per gdb",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    },
                    {
                        "description": "Imposta Versione Disassembly su Intel",
                        "text": "-gdb-set disassembly-flavor intel",
                        "ignoreFailures": true
                    }
                ]
            },
            {
                "name": "(gdb) Collegamento pipe",
                "type": "cppdbg",
                "request": "attach",
                "program": "${workspaceFolder}/a.out",
                "processId": "${command:pickRemoteProcess}",
                "pipeTransport": {
                    "debuggerPath": "/usr/bin/gdb",
                    "pipeProgram": "/usr/bin/ssh",
                    "pipeArgs": [],
                    "pipeCwd": ""
                },
                "MIMode": "gdb",
                "setupCommands": [
                    {
                        "description": "Abilita la riformattazione per gdb",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    },
                    {
                        "description": "Imposta Versione Disassembly su Intel",
                        "text": "-gdb-set disassembly-flavor intel",
                        "ignoreFailures": true
                    }
                ]
            },
            


            {
                "name": "(gdb) Avvio pipe",
                "type": "cppdbg",
                "request": "launch",
                "program": "${workspaceFolder}/a.out",
                "args": [],
                "stopAtEntry": false,
                "cwd": "${fileDirname}",
                "environment": [],
                "externalConsole": false,
                "pipeTransport": {
                    "debuggerPath": "/usr/bin/gdb",
                    "pipeProgram": "/usr/bin/ssh",
                    "pipeArgs": [],
                    "pipeCwd": ""
                },
                "MIMode": "gdb",
                "setupCommands": [
                    {
                        "description": "Abilita la riformattazione per gdb",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    },
                    {
                        "description": "Imposta Versione Disassembly su Intel",
                        "text": "-gdb-set disassembly-flavor intel",
                        "ignoreFailures": true
                    }
                ]
            },
        {
            "name": "(gdb) Associa",
            "type": "cppdbg",
            "request": "attach",
            "program": "${workspaceFolder}/a.out",
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Abilita la riformattazione per gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Imposta Versione Disassembly su Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ]
        }
        ]
    }
[\code]
Jackie98
Prode Principiante
Messaggi: 5
Iscrizione: domenica 5 marzo 2023, 18:46

Re: WSL2 Windows 10 su VM e debugger

Messaggio da Jackie98 »

Task.json


{

Codice: Seleziona tutto

 "tasks": [ 
        {
            "type": "cppbuild",
            "label": "C/C++",
            "command": "/usr/bin/g++",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "Debugghino."
        }
    ],
    "version": "2.0.0"
}
[\CODE]
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5394
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: WSL2 Windows 10 su VM e debugger

Messaggio da GjMan78 »

Sembra tutto ok a prima vista.

Quando dici che il debug non parte ricevi qualche errore oppure niente?
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Jackie98
Prode Principiante
Messaggi: 5
Iscrizione: domenica 5 marzo 2023, 18:46

Re: WSL2 Windows 10 su VM e debugger

Messaggio da Jackie98 »

Nulla, il prompt mi dice che la compilazione è andata a buon fine, ma il programma non parte in modalità debug.
L'unico dubbio che mi è rimasto, riguarda la variabile d'ambiente PATH, che non ha un percorso che punta al gdb...
Avatar utente
GjMan78
Rampante Reduce
Rampante Reduce
Messaggi: 5394
Iscrizione: mercoledì 22 novembre 2006, 19:15
Desktop: KdePlasma
Distribuzione: EndeavourOS
Sesso: Maschile
Località: ~/Italia/Lazio/Viterbo/

Re: WSL2 Windows 10 su VM e debugger

Messaggio da GjMan78 »

Gdb risiede in /usr/bin che dovrebbe già essere inserito nella variabile di ambiente $PATH
MacBook Pro - Intel i5-3210 - 16 Gbyte Ram DDR3 - SSD 500 Gbyte x 2
»»» 𝗙𝗮𝗶 𝗶𝗹 𝗕𝗮𝗰𝗸𝘂𝗽! ¯\_(ツ)_/¯
Scrivi risposta

Ritorna a “Dilemmi del principiante”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 10 ospiti