デバッグ中C++
Qt作成者のコード次のエラーが表示されます
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
ここで一時的な解決策が見つかりました: QtProjectでデバッグしようとしているときにエラーを受け取ります
一時的な解決策(再起動後も存続しません):
echo 0 | Sudo tee /proc/sys/kernel/yama/ptrace_scope
しかし、Qtを使用するためにPCを起動するたびにターミナルで同じコードを実行することは困難です。
What is the permanent solution for this?
Ubuntuを実行している場合、
必要な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
詳細については。
私は答えを得ました。
場所に移動/etc
ルート権限。
ファイルを見つけますrc.local
。
echo 0 | tee /proc/sys/kernel/yama/ptrace_scope
PCを再起動すると、デバッガーが完全に動作していることがわかります。
私は以下のリンクでubuntuで私のために働く答えを見つけ、クレジットは dstzcxr に行きます
https://askubuntu.com/a/501271/39558
[プロジェクト](左側のバー)-[実行]タブ-[実行]セクションの[ターミナルで実行]ボックスのチェックを外す(またはチェック-実行-何らかの理由でチェックを外す).