Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro ao tentar compilar código

Baixei os arquivos do Capítulo 02. Structs do curso CIII (https://github.com/alura-cursos/Curso-C-III-Recursos-avan-ados-da-linguagem/archive/capitulo2.zip) para rodar no meu Ubuntu, no entanto recebo as seguintes mensagens no meu terminal ao tentar compilar

matheus@matheus-X550CA:~/Área de Trabalho$ gcc fogefoge.c -o fogefoge.out

/tmp/ccdtI0Fg.o: Na função "main":
fogefoge.c:(.text+0x185): referência não definida para "lemapa"
fogefoge.c:(.text+0x19d): referência não definida para "encontramapa"
fogefoge.c:(.text+0x1a9): referência não definida para "imprimemapa"
fogefoge.c:(.text+0x1e9): referência não definida para "liberamapa"
collect2: error: ld returned 1 exit status

matheus@matheus-X550CA:~/Área de Trabalho$ 
1 resposta
solução!

Olá Matheus,

Para conseguir compilar o arquivo fogefoge.c, você também precisa compilar o arquivo mapa.c pois o fogefoge usa as funções desse arquivo. Perceba que são justamente as funções que aparecem na mensagem de erro como "referência não definida".

Para resolver isso, você pode indicar ao compilador que você quer compilar todos os fontes na pasta atual. O comando ficaria assim:

gcc *.c -o fogefoge.out