Attaching to Local Process
Attach to local process feature allows you to debug a project which you are developing in CLion, but (for some reasons) are not able to launch directly from your IDE.
In CLion, you can attach to a local process with GDB on Windows/Linux or GDB/LLDB on macOS/Linux for C/C++ applications. When applicable, other languages debuggers (e.g., Python debugger or Swift LLDB) can be used as well.
Prerequisites for Ubuntu users
If you are using CLion on Ubuntu (or probably, on some other Linux distribution), an error message ptrace: Operation not permitted
may appear upon your first attempt to attach to a local process. In this case, do one of the following:
- To disable this restriction temporarily, enter the command:
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
- To disable this restriction permanently, open the
/etc/sysctl.d/10-ptrace.conf
file for editing and change the linekernel.yama.ptrace_scope = 1
tokernel.yama.ptrace_scope = 0
.
To apply the changes immediately, enter the above commandecho 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
. Alternatively, runsudo service procps restart
or simply restart your system.
You can find more details here.
Attaching to local process
To attach to a local process, follow these general steps:
- Launch the process intended for debugging. You can do it from operating system or using the CLion terminal.
- To find the process to attach to, do one of the following:
- On the main menu, choose :
- On the main menu, choose or press Ctrl+Shift+A. In the list of actions that appears, find the desired action by typing the first letters, and select it:
- From the list of available processes that appears, select the desired process. Simplify your search by typing the first letters of its name or PID In case there are several debuggers that can be used for the selected process, you can choose among them in the pop-up menu:
- Proceed with debugging the same way as you usually do it in CLion (set breakpoints, step through, pause and resume the process, evaluate expressions, etc.):
- When finished, detach the process: select the Stop the process button of the Debug Tool Window. or click the
Last modified: 24 July 2018