Ao criar o Altera® exemplo de configuração linux via driver Protocol(CvP), as seguintes mensagens de erro podem ocorrer:
altera_cvp.c: na função "altera_cvp_wait_for_bit":
altera_cvp.c:243:3: erro: "TASK_UNINTERRUPTIBLE" não declarado (primeiro uso nesta função)
altera_cvp.c:243:3: nota: cada identificador não declarado é relatado apenas uma vez para cada função em que aparece
altera_cvp.c:243:3: erro: declaração implícita da função "schedule_timeout" [-Werror=implícita-função-declaração]
altera_cvp.c: na função "altera_cvp_open":
altera_cvp.c:318:11: erro: ponteiro de dereferencing para tipo incompleto
altera_cvp.c:318:23: erro: "O_ACCMODE" não declarado (primeiro uso nesta função)
altera_cvp.c:318:37: erro: "O_RDONLY" não declarado (primeiro uso nesta função)
altera_cvp.c: na função "altera_cvp_release":
altera_cvp.c:337:11: erro: ponteiro de dereferencing para tipo incompleto
altera_cvp.c:337:23: erro: 'O_ACCMODE' não declarado (primeiro uso nesta função)
altera_cvp.c:337:37: erro: "O_RDONLY" não declarado (primeiro uso nesta função)
altera_cvp.c: no nível superior:
altera_cvp.c:413:8: erro: variável "altera_cvp_fops" tem inicializador, mas tipo incompleto
altera_cvp.c:414:2: erro: campo desconhecido 'proprietário' especificado no inicializador
altera_cvp.c:414:2: aviso: excesso de elementos no inicializador de estrutura [habilitado por padrão]
altera_cvp.c:414:2: aviso: (inicialização próxima para 'altera_cvp_fops') [habilitado por padrão]
altera_cvp.c:415:2: erro: campo desconhecido 'llseek' especificado no inicializador
altera_cvp.c:415:13: erro: 'no_llseek' não declarado aqui (não em uma função)
altera_cvp.c:415:2: aviso: excesso de elementos no inicializador de estrutura [habilitado por padrão]
altera_cvp.c:415:2: aviso: (inicialização próxima para 'altera_cvp_fops') [habilitada por padrão]
altera_cvp.c:416:2: erro: campo desconhecido 'ler' especificado no inicializador
altera_cvp.c:416:2: aviso: excesso de elementos no inicializador de estrutura [habilitado por padrão]
altera_cvp.c:416:2: aviso: (inicialização próxima para 'altera_cvp_fops') [habilitado por padrão]
altera_cvp.c:417:2: erro: campo desconhecido "write" especificado no inicializador
altera_cvp.c:417:2: aviso: excesso de elementos no inicializador de estrutura [habilitado por padrão]
altera_cvp.c:417:2: aviso: (inicialização próxima para 'altera_cvp_fops') [habilitado por padrão]
altera_cvp.c:418:2: erro: campo desconhecido 'aberto' especificado no inicializador
altera_cvp.c:418:2: aviso: excesso de elementos no inicializador de estrutura [habilitado por padrão]
altera_cvp.c:418:2: aviso: (inicialização próxima para 'altera_cvp_fops') [habilitado por padrão]
altera_cvp.c:419:2: erro: campo desconhecido "versão" especificado no inicializador
altera_cvp.c:419:2: aviso: excesso de elementos no inicializador de estrutura [habilitado por padrão]
altera_cvp.c:419:2: aviso: (inicialização próxima para 'altera_cvp_fops') [habilitado por padrão]
altera_cvp.c: na função "altera_cvp_init":
altera_cvp.c:482:2: erro: declaração implícita da função "alloc_chrdev_region" [-Werror=implícita-função-declaração]
altera_cvp.c:496:3: erro: declaração implícita da função "unregister_chrdev_region" [-Werror=implicit-function-declaration]
Para resolver este problema, certifique-se de que os seguintes três arquivos adicionais de cabeçalho estejam incluídos no arquivo altera_cvp.c contido no altera_cvp_1.0.tar.gz.gz:
#include /*Ajuda a corrigir O_ACCMODE*/
#include /*Ajuda a corrigir TASK_UNINTERRUPTIBLE */
#include /*Ajuda a corrigir o intializador de estrutura */