O ctype.h está instalado no meu sistema?

1

Estou executando o 16.04. Meu programa C usa o isdigit (int). Eu recebo o seguinte quando eu o executo em gdb:

'Breakpoint 1, check_tok (token=0x6f7c20 <tokens> ".t") at outline.c:150
150 unsigned char *tp=token;
(gdb) s
151     if(isdigit(*tp))return NUM;
(gdb) 
__ctype_b_loc () at ../include/ctype.h:38
38  ../include/ctype.h: No such file or directory.
(gdb) 

Eu já fiz:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential

Eu não recebo nenhum aviso quando executo o gcc no outline.c. no topo do meu programa eu tenho:

#include <ctype.h>
#include <stdlib.h>
#include <stdio.h>
#include "outline.h"

Eu só recebo o erro acima em gdb.

O que está acontecendo? Obrigado.

    
por Alvin P. Schmitt 24.08.2016 / 05:34

1 resposta

2

O problema não é que você não tenha ctype.h porque você precisa compilar seu programa. No seu caso, depende da maneira como o gdb está localizando inclui. Talvez você precise usar "locate ctype.h" e definir dentro do gdb o diretório include como:

set substitute-path /usr/src/include /mnt/include

por favor, dê uma olhada aqui: link

    
por 0x0C4 24.08.2016 / 08:35

Tags