Erro de recebimento ao tentar depurar no QtProject

14

Eu instalei a última versão do o QtProject então agora eu posso depurar o código C++ .

Ao tentar depurar pela primeira vez, recebi este erro:

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
    
por user124009 17.01.2013 / 18:53

4 respostas

14

Nas versões do Ubuntu após 10.10, você encontrará mais aplicativos relacionados, como o QtCreator. É uma segurança recurso do Ubuntu que impede o depurador de se conectar a processos que não são de sua propriedade.

Arquivado como bug # 3509 contra o QtCreator . Para contornar esse problema, faça o seguinte:

  • solução temporária (não sobreviverá a uma reinicialização):

     echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
    
  • Em um arquivo /etc/sysctl.d/10-ptrace.conf (já deveria existir), altere o valor de kernel.yama.ptrace_scope para 0 e recarregue a configuração: sudo sysctl -p .

Estou postando explicitamente a solução temporária, pois você provavelmente não deseja manter esse recurso desativado em uma máquina comum por motivos de segurança.

    
por gertvdijk 17.01.2013 / 19:15
4

Eu tive o mesmo problema ao executar o projeto no terminal. Apenas desmarque (ou marque - execute - desmarque se for por algum motivo desmarcado) a caixa "Executar no terminal" em "Projetos" (na barra esquerda) - guia "Executar" - seção "Executar".

    
por reasonable_assumption 22.07.2014 / 22:02
0

Você pode alterar os recursos do gdb com

sudo setcap cap_sys_ptrace=eip /usr/bin/gdb

recursos de homem dizem que o cap_sys_ptrace dá certo para

Trace  arbitrary  processes  using ptrace(2); apply get_robust_list(2)
to arbitrary processes; inspect processes using kcmp(2).

Veja também man cap_from_text.

Esta é uma solução que não é removida pela reinicialização, mas também não é completamente segura. Estou aberto a sugestões sobre como fazer isso de forma permanente e segura.

    
por Matti X Virtanen 19.01.2016 / 11:22
-3

Basta abrir o QtCreator através de um terminal com permissões de root; funcionou para mim.

sudo qtcreator
    
por Prashant Singh Rathore 11.10.2014 / 13:44