Onde encontrar os core dumps do código compilado gcc e g ++?

1

Eu compilei alguns códigos C, uma vez com gcc e depois com g ++, então eu obtive dois arquivos executáveis de saída. Ao executar os dois arquivos, descobri que isso me dizia:

Segmentation fault (core dumped)

Mas não há sinal de nenhum core dump em /var/crash a fazer com isso (apenas coisas antigas), então onde eles estariam (eu não esperaria que eles estivessem lá, mas apenas pensei em mencionar isso Eu tinha verificado)? Estou executando o Ubuntu GNOME 16.04 com o GNOME 3.20.

    
por muru 26.06.2016 / 23:05

1 resposta

2

O despejo do núcleo está desabilitado por padrão no Ubuntu, definindo o tamanho máximo do arquivo para 0 para todos os usuários.

Você pode verificar isso por:

ulimit -c

Por padrão, mostraria 0.

Agora, para ativar o esvaziamento do núcleo, defina o tamanho para o valor desejado (ou unlimited ).

Por exemplo, definir o tamanho máximo do arquivo de dumping como 4 KB:

ulimit -c 8

-c aceita números de blocos com cada bloco sendo 512 bytes.

Definindo para unlimited (não recomendado):

ulimit -c unlimited

Isso mudará o limite para o usuário atual e não permanentemente. Para tornar as alterações efetivas para os usuários seletiva e permanentemente, você deve editar o arquivo /etc/security/limits.conf e definir os valores desejados.

    
por heemayl 26.06.2016 / 23:23