Qt Creator,ptrace:操作不允许。 什么是永久解决scheme?
在Qt创build器中debuggingC++
代码时,出现以下错误
ptrace: Operation not permitted. Could not attach to the process. Make sure no other debugger traces this process. Check the settings of /proc/sys/kernel/yama/ptrace_scope For more details, see /etc/sysctl.d/10-ptrace.conf
这里find了一个临时解决scheme: 在QtProject中尝试debugging时接收错误
-
临时解决scheme(不会重新启动):
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
但是,每当我启动我的电脑使用Qt时,在terminal中运行相同的代码是很困难的。
What is the permanent solution for this?
如果运行Ubuntu,
build议启用所需的ptrace内核设置(由qtcreator暗示)的方法是编辑/etc/sysctl.d/10-ptrace.conf
sudo vim /etc/sysctl.d/10-ptrace.conf
然后改变
kernel.yama.ptrace_scope = 1
至
kernel.yama.ptrace_scope = 0
保存,
然后申请:
$ sudo sysctl --system -a -p|grep yama kernel.yama.ptrace_scope = 0
跑
man sysctl
获取更多信息。
我得到了答案。
-
以root权限转到位置
/etc
-
find文件
rc.local
。 - 在像gedit这样的文本编辑器中打开它,并在其中添加下面的代码
-
echo 0 | tee /proc/sys/kernel/yama/ptrace_scope
重新启动你的电脑,你可以看到debugging工作正常。
我在下面的链接find了在Ubuntu上适用于我的答案,信用评价为dstzcxr
https://askubuntu.com/a/501271/395583
在“项目”(左栏)中的“运行terminal”框中 – “运行”选项卡 – “运行”部分,只需取消勾选(或者选中 – 运行 – 取消选中是否由于某种原因未选中)。