Lors du débogage C++
code dans Qt creator j'obtiens l'erreur suivante
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
Ici, une solution temporaire est trouvée: Réception d'une erreur lors de la tentative de débogage dans QtProject
solution temporaire (ne survivra pas à un redémarrage):
echo 0 | Sudo tee /proc/sys/kernel/yama/ptrace_scope
Mais il est difficile d'exécuter le même code dans le terminal à chaque fois que je démarre mon PC pour utiliser Qt.
What is the permanent solution for this?
Si vous exécutez Ubuntu,
La façon recommandée d'activer le paramètre de noyau ptrace nécessaire (suggéré par qtcreator) est de modifier /etc/sysctl.d/10-ptrace.conf
Sudo vim /etc/sysctl.d/10-ptrace.conf
Puis changez
kernel.yama.ptrace_scope = 1
à
kernel.yama.ptrace_scope = 0
Sauver,
puis appliquez:
$ Sudo sysctl --system -a -p|grep yama
kernel.yama.ptrace_scope = 0
courir
man sysctl
pour plus d'informations.
J'ai eu la réponse.
Accédez à l'emplacement /etc
avec le privilège root.
Trouvez le fichier rc.local
.
echo 0 | tee /proc/sys/kernel/yama/ptrace_scope
Redémarrez votre PC et vous pouvez voir le débogueur fonctionner parfaitement.
J'ai trouvé la réponse qui me convient sur ubuntu dans le lien ci-dessous et le crédit revient à dstzcxr
https://askubuntu.com/a/501271/39558
Il suffit de décocher (ou de cocher - exécuter - décocher si elle est décochée pour une raison quelconque) la case "Exécuter dans le terminal" dans "Projets" (sur la barre de gauche) - onglet "Exécuter" - section "Exécuter".