ID do artigo: 000083955 Tipo de conteúdo: Solução de problemas Última revisão: 11/09/2012

Posso usar a função Assert() newlib para projetos Nios II software compilados com a bandeira da biblioteca small C?

Ambiente

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descrição

A função Assert() newlib chama a função fiprintf que não é suportada pela Nios® II pequena C.  No entanto, você pode usar assert() modificando-o para usar fprintf em vez de fiprintf.  Para fazer isso, copie o diretório de instalação /bin/nios2-gnutools/src/newlib/newlib/libc/stdlib/assert.c no seu projeto de biblioteca do sistema.  Em seguida, modifique a chamada para fiprint para chamar fprintf em vez disso.  Em outras palavras, altere o seguinte código:

(void)fiprintf(stderr, "assertion \%s\ failed: file \%s\, line %d\n", failedexpr, file, line);

para ler:

(void)fprintf(stderr, "assertion \%s\ failed: file \%s\, line %d\n", failedexpr, file, line);

Em seguida, salve o arquivo assert.c modificado e recompile seu projeto.  O compilador agora receberá a cópia local do assert.c em vez da versão da biblioteca.

Produtos relacionados

Este artigo aplica-se a 1 produtos

Dispositivos programáveis Intel®

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês prevalecerá e será a determinante. Exibir a versão em inglês desta página.