microsoft / microsoft/vscode-cpptools
additionalSOLibSearchPath does not work for remote debugging
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 6.2k
- Fork
- 1.7k
- Merge medio
- 14h 46m
- PR unite (30g)
- 61
Descrizione
Bug type: Debugger
Description
additionalSOLibSearchPath is not respected in debuging session using remote debugger from windows to linux using ssh.
According to maintainer in vscode-remote-release the issue is in debugger, not in the remote extension, see https://github.com/microsoft/vscode-remote-release/issues/5748
Work around
is to use "environment": [{ "name": "LD_LIBRARY_PATH", "value": "/path_to_libImportantLib/" },
Details
- VSCode Version:
Version: 1.61.0 (user setup)
Commit: ee8c7def80afc00dd6e593ef12f37756d8f504ea
Date: 2021-10-07T18:13:09.652Z
Electron: 13.5.1
Chrome: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Windows_NT x64 10.0.19042 - Local OS Version:
OS: Windows_NT x64 10.0.19042 - Remote OS Version:
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.7.1908 (Core)
Release: 7.7.1908
Codename: Core
Linux 3.10.0-1160.41.1.el7.x86_64 #1 SMP Tue Aug 31 14:52:47 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux - Remote Extension/Connection Type:
SSH - Logs:
To Reproduce
- Compile an executable (exe_to_debug) on remote linux which depends on dynamic libraries in some path, eg
/path_to_libImportantLib/where libraries are found eg.libImportantLib.so - Debug executable on remote linux with dynamic libraries but without setting
additionalSOLibSearchPath
--> gdb fails as expected, output in gdb terminal
exe_to_debug: error while loading shared libraries: libImportantLib.so: cannot open shared object file: No such file or directory - In
Launch.jsonset
"additionalSOLibSearchPath": "/path_to_libImportantLib/"
Expected: Successful debugging
Current Result: Same error as (2)
`exe_to_debug: error while loading shared libraries: libImportantLib.so: cannot open shared object file: No such file or directory
Workaround:
Debugging works if I add following to Launch.json:
"environment": [
{
"name": "LD_LIBRARY_PATH",
"value": "/path_to_libImportantLib/"
},
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia riproducendo lo scenario di debug SSH remoto descritto in launch.json su Windows-to-Linux, confrontando additionalSOLibSearchPath con il workaround documentato basato su LD_LIBRARY_PATH. Il lavoro è completato quando l’eseguibile remoto carica la sua libreria condivisa e il debug riesce configurando solo additionalSOLibSearchPath.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp, typescript, vscode
- Ambito
- devtools, operating-systems
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 30/100