Xilinx SDK编译出现undeference to “outbyte”错误的解决办法

【前言】自己初次接触MicroBlaze,好多东西都不太了解,借着博客园的平台把自己平时学习和工作遇到的问题和解决办法,以及自己的一些想法记录下来,边学习,边积累,也想与大家分享交流一下心得,与众乐方为乐也,^_^

自己前些天在SDK中编译一个helloworld的时候,提示“print函数中undeference to outbyte”的错误,通过百度以及自己的研究,找到了解决办法:
第一步:确认SDK生成的链接脚本中heap和stack的大小是否太小了,因为print等函数的输出需要占用比较多的堆栈资源的,我将其各自的值由1KB改为8KB;(修改时,不能直接输入8KB,必须输入8192,因为SDK是按字节计算的,呵呵)

第二部:确认BSP(Board Support Package)设置中的drive中,stdin和stdout的value是否都是debug_module,若不是,将其改为debug_module即可,因为print等函数的功能是将信息显示在标准输出上,因此,需要指定stdin和stdout。

 

【补充】:
1.MicroBlaze实际上是Xilinx公司用硬件描述语言实现的CPU处理器的软核,即完全用FPGA搭建一个CPU;
2.Xilinx ISE工具是用来根据CPU的架构,如MicroBlaze,建立CPU外围的硬件结构,使用的语言自然就是硬件描述语言,如VHDL或Verilog;
3.SDK工具则依据ISE工具建立硬件平台,导入MicroBlaze的软核,然后使用高级语言,如C或C++进行应用程序的编写,并将最终生成的程序刷到FPGA中,从而实现想要的功能。

【备注】
以上是自己根据这些天的工作和学习的一些心得和体会,不见得完全正确,欢迎大家交流指正,^_^

原文链接: https://www.cnblogs.com/cnpirate/archive/2012/12/19/2824792.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    Xilinx SDK编译出现undeference to "outbyte"错误的解决办法

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/73019

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月9日 下午3:42
下一篇 2023年2月9日 下午3:42

相关推荐