-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
codelldb inside of vscode-lldb extension doesn't work #160874
Comments
cc: @nigelgbanks since I'm running your latest PR bumping this. |
I suspect that vscode-lldb's fork of lldb needs to be updated? |
Oh yeah, that would be because the adapter is patched-inline in the extension process and the unwrapped, useless, adapter is passed thru instead. |
I have some work that fixes this:
But most of all, it seems like I really wish this were less messy. |
i got hit by this, but now it says
|
The patched adapter now produces a dynamic library instead of a static archive fixes NixOS#234908,NixOS#160874
Actually #236915 only resolves the libcodelldb.so issue. The original issue of missing liblldb.so still exists somewhat. Yet a working
Help is wanted to resolve the path issue of the adapter sub package 🥲 |
Summary: vscode-lldb has been broken on Darwin due to a build-time issue: * on Darwin, the vscode-lldb build scripts expect $HOME to exist and be writable, NixOS#202507 and several runtime-issues: * codelldb can't find its dynamic libraries (NixOS#160874) * lldb-server from nixpkgs doesn't work due to missing the "com.apple.security.cs.debugger" macOS codesigning entitlement, (NixOS#38624), also with the symptom that tccd, the macOS "Transparency, Consent, and Control" daemon, denies requests it receives from vscode/codium with log messages like: "AUTHREQ_CTX: msgID=..., function=<private>, service=kTCCServiceDeveloperTool, preflight=yes, query=1," "Service kTCCServiceDeveloperTool does not allow prompting; returning denied." "AUTHREQ_RESULT: msgID=..., authValue=0, authReason=5, authVersion=1, error=(null),", etc. * lldb-server from nixpkgs may also provide a different CLI interface than codelldb expects on macOS. * vscode-lldb directs lldb to load rust pretty-printing scripts which need to be preserved through the build process in nixpkgs Solution: * The build problem can be fixed by setting HOME="$(pwd)/home", as suggested in NixOS#202507. * The dynamic libraries issue can be fixed by setting LD_LIBRARY_PATH while wrapping codelldb * The permissions issue and CLI interface issue can both be fixed by using Xcode's debugserver, /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/Resources/debugserver on macOS, since it has the required entitlement and the expected interface. * Finally, the script-loading issue can be fixed by copying the required scripts to the location that vscode-lldb expects to find them in. Fixes: * NixOS#148946: Error failed to get reply to handshake packet on x86_64-darwin with vscode-extensions.vadimcn.vscode-lldb * NixOS#160874: codelldb inside of vscode-lldb extension doesn't work * NixOS#202507: vscode-extensions.vadimcn.vscode-lldb fails to build on aarch64-darwin (cherry picked from commit fa70e7499b08524a4a02e7ce9e39847b9d3c95df)
@colemickens why was this closed? I don't think it's fixed. |
Summary: vscode-lldb has been broken on Darwin due to a build-time issue: * on Darwin, the vscode-lldb build scripts expect $HOME to exist and be writable, NixOS#202507 and several runtime-issues: * codelldb can't find its dynamic libraries (NixOS#160874) * lldb-server from nixpkgs doesn't work due to missing the "com.apple.security.cs.debugger" macOS codesigning entitlement, (NixOS#38624), also with the symptom that tccd, the macOS "Transparency, Consent, and Control" daemon, denies requests it receives from vscode/codium with log messages like: "AUTHREQ_CTX: msgID=..., function=<private>, service=kTCCServiceDeveloperTool, preflight=yes, query=1," "Service kTCCServiceDeveloperTool does not allow prompting; returning denied." "AUTHREQ_RESULT: msgID=..., authValue=0, authReason=5, authVersion=1, error=(null),", etc. * lldb-server from nixpkgs may also provide a different CLI interface than codelldb expects on macOS. * vscode-lldb directs lldb to load rust pretty-printing scripts which need to be preserved through the build process in nixpkgs Solution: * The build problem can be fixed by setting HOME="$(pwd)/home", as suggested in NixOS#202507. * The dynamic libraries issue can be fixed by setting LD_LIBRARY_PATH while wrapping codelldb * The permissions issue and CLI interface issue can both be fixed by using Xcode's debugserver, /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/Resources/debugserver on macOS, since it has the required entitlement and the expected interface. * Finally, the script-loading issue can be fixed by copying the required scripts to the location that vscode-lldb expects to find them in. Fixes: * NixOS#148946: Error failed to get reply to handshake packet on x86_64-darwin with vscode-extensions.vadimcn.vscode-lldb * NixOS#160874: codelldb inside of vscode-lldb extension doesn't work * NixOS#202507: vscode-extensions.vadimcn.vscode-lldb fails to build on aarch64-darwin
Describe the bug
I want to use
vscode-extensions.vadimcn.vscode-lldb.adapter
(providingcodelldb
) for it's Debug Adapter support. Particularly it seems like Helix can utilize it with some early debugging support.However, it doesn't seem to work. After adding that to my nix shell, and entering it, and trying to run it, I get:
The text was updated successfully, but these errors were encountered: