go-delve/delve · error
could not find in debug-info-directories
Error message
could not find %q in debug-info-directories
What it means
Returned by configureSetDebugInfoDirectories when the user runs `config debug-info-directories remove <dir>` and the given directory is not present in t.conf.DebugInfoDirectories. Delve only removes entries by exact string match from the configured list of directories searched for split DWARF debug info.
Solutions
- Run `config debug-info-directories` with no argument to list current entries
- Use the exact stored string, including trailing slash if present
- Re-add the directory with `config debug-info-directories add <dir>` if you intended to add rather than remove
Example fix
// before dlv> config debug-info-directories remove /usr/lib/debug/ # fails: stored as /usr/lib/debug // after dlv> config debug-info-directories # list dlv> config debug-info-directories remove /usr/lib/debug # exact match
Defensive patterns
Strategy: validation
Validate before calling
dirs = t.conf.DebugInfoDirectories
if target_dir not in dirs:
raise ValueError("%r not in debug-info-directories: %r" % (target_dir, dirs)) Prevention
- List debug-info-directories before removing
- Avoid `~` and relative paths — store absolute normalized paths
- Watch trailing-slash differences
When it happens
Trigger: `config debug-info-directories remove /some/dir` where /some/dir was never added, was already removed, or differs textually (trailing slash, ~ unexpanded, relative path) from the stored entry.
Common situations: Cleaning up default debug-info directories (e.g. /usr/lib/debug) that were never added, typos, or shell paths with `~` that Delve stored unexpanded.
Related errors
- could not find rule for
- command not available
- failed to open file
- failed to write breakpoint to file
- illegal commandline
AI-assisted analysis of go-delve/delve@a23773e6c3 (2026-08-31).
Data as JSON: /api/errors/1b65e7d46473d9b4.
Report an issue: GitHub.
Appendix: source
Thrown at pkg/terminal/config.go:181
case "-add":
if len(v) < 2 {
return errors.New("not enough arguments to \"config debug-info-directories\"")
}
t.conf.DebugInfoDirectories = append(t.conf.DebugInfoDirectories, v[1])
case "-rm":
if len(v) < 2 {
return errors.New("not enough arguments to \"config debug-info-directories\"")
}
found := false
for i := range t.conf.DebugInfoDirectories {
if t.conf.DebugInfoDirectories[i] == v[1] {
found = true
t.conf.DebugInfoDirectories = append(t.conf.DebugInfoDirectories[:i], t.conf.DebugInfoDirectories[i+1:]...)
break
}
}
if !found {
return fmt.Errorf("could not find %q in debug-info-directories", v[1])
}
default:
return errors.New("wrong argument to \"config debug-info-directories\"")
}
if t.client != nil {
t.client.SetDebugInfoDirectories(t.conf.DebugInfoDirectories)
}
return nil
}
View on GitHub (pinned to a23773e6c3)