Attaching to Local Process
Basics
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. Currently in CLion you can attach to local process with GDB on Windows and Linux or LLDB on OS X for the C/C++ applications and Python debugger for the Python scripts and use all the debugging instruments available in CLion.
Prerequisites for Ubuntu users
If you are using CLion on Ubuntu (or probably, on some other Linux distribution), upon the first attempt
to attach to the local process you can get the ptrace: Operation not permitted.
error message.
To disable it and enable attach to the local process feature, do 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 file
/etc/sysctl.d/10-ptrace.conf
for editing and change the linekernel.yama.ptrace_scope = 1
tokernel.yama.ptrace_scope = 0
. To apply the changes, entersudo service procps restart
or restart your system, at your choice.
Attaching to local process
- Launch the process intended for debugging. You can do it from operating system or using the CLion terminal. Note, that your project shall exist in CLion (as created or imported).
- To find the process to attach to, do one of the following:
- 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 or for the Python script:
- Proceed with debugging in the same way as you usually do it in CLion.
- When finished, detach the process: select the menu option or click the Stop the process button of the Debug Tool Window