尝试在Nios II中使用alt_getchar()时,为什么会出现错误“未定义引用’getc’”?-Altera-Intel社区-FPGA CPLD-ChipDebug

尝试在Nios II中使用alt_getchar()时,为什么会出现错误“未定义引用’getc’”?

当选中“启用Small C库”选项并且未选中“启用轻量级器件驱动程序API”选项时,可以看到此问题。

“启用小型C库”选项可以从Nios II板级支持包(BSP)中删除许多功能,包括STDIN例程。这些函数包括例程getchar(),它调用getc()。

“启用轻量级器件驱动程序API”优化了alt_getchar(),alt_putstr(),alt_printf()和alt_putchar()函数。如果未选中此选项,这些函数将直接调用其库C等效项getchar(),putstr(),printf()和putchar()。

因此,选中“启用Small C库”并取消选中“启用轻量级器件驱动程序API”,alt_getchar()将映射到getchar()函数,该函数不再位于库中。

为了成功使用alt_getchar函数,用户需要取消选中“启用Small C库”或在BSP设置中启用“启用轻量级器件驱动程序API”。

解决/修复方法

当选中“启用Small C库”选项并且未选中“启用轻量级器件驱动程序API”选项时,可以看到此问题。

“启用小型C库”选项可以从Nios II板级支持包(BSP)中删除许多功能,包括STDIN例程。这些函数包括例程getchar(),它调用getc()。

“启用轻量级器件驱动程序API”优化了alt_getchar(),alt_putstr(),alt_printf()和alt_putchar()函数。如果未选中此选项,这些函数将直接调用其库C等效项getchar(),putstr(),printf()和putchar()。

因此,选中“启用Small C库”并取消选中“启用轻量级器件驱动程序API”,alt_getchar()将映射到getchar()函数,该函数不再位于库中。

为了成功使用alt_getchar函数,用户需要取消选中“启用Small C库”或在BSP设置中启用“启用轻量级器件驱动程序API”。

请登录后发表评论

    没有回复内容