# Linux debugger

The Linux debugger has the following particularities and limitations:

\- The debugger server can handle only one IDA client at a time

\- By default, the 64-bits debugger will try to load "libunwind-x86\_64.so.8" and "libunwind-ptrace.so.0" in order to help with stack recovery.

\- ARMLinux: hardware breakpoints are not supported

\- ARMLinux: The THUMB mode is not supported

\- Configure the debugger specific options (for 64 bits only) in Debugger Options, Set specific options.

```
  - Path to libunwind:
    - "libunwind-x64_64.so.8" (the default): the debugger will try to load
      libunwind "libunwind-x86_64.so.8" + "libunwind-ptrace.so.0" pair
      using the regular 'ld' search path.
    - "libunwind-x64_64.so" (note the lack of ".8" at the end): like the
      default, except the debugger will look for "libunwind-x86_64.so"
      and "libunwind-ptrace.so" (this is particularly useful for working
      with libunwind "dev" packages)
    - absolute path to libunwind-x64_64.so.8 or libunwind-x64_64.so: Linux debugger
      will try to load libunwind only from the provided path.
    - absolute path to "libunwind-x64_64.so[.8]": the debugger will try
      to load the two libraries from there (the absolute path to
      "libunwind-ptrace.so[.0]" will be derived from that of
      "libunwind-x64_64.so[.8]")
    - left blank: don't use libunwind to collect stack traces.

  By default this is set to libunwind-x86_64.so meaning the default
  path will be used to load libunwind-x86_64.so(.8) and libunwind-ptrace.so(.0). If an absolute
  path is provided, both libraries will be loaded from this path. If left emtpy, the call
  stack will be analyzed by Ida and not libunwind.
```

See also

* [Start process](/8.4/user-guide/user-interface/menu-bar/debugger/process-control/start-process.md)
* [Debugger submenu](/8.4/user-guide/user-interface/menu-bar/debugger.md)
* [How to launch remote debugging](/8.4/user-guide/debugger/remote-debugging.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hex-rays.com/8.4/user-guide/debugger/local-debugging/linux-debugger.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
