OSG编译错误总结

本文介绍了在使用osg库时遇到的freetype插件和gif插件编译问题及解决方案。对于freetype插件,需要在链接器输入lib里添加legacy_stdio_definitions.lib。对于gif插件,则需要重新定义__iob_func()函数,并同样添加legacy_stdio_definitions.lib。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、依赖库问题
osg拥有强大的插件管理系统,能够通过加载插件实现一些功能,如读取特定格式的文件,但是为了使用这一功能必须在编译时加入相应的库,这时很容易出现一些问题。
(1)、freetype插件编译出错
freetype编译错误
这个错误是缺少库文件,在链接器输入lib里加上legacy_stdio_definitions.lib这个LIB。
(2)、gif插件编译错误
gif编译错误
这个错误是因为stdin, stderr, stdout 这几个函数vs2015和以前的定义得不一样,所以报错。
解决方法呢,就是使用{*stdin,*stdout,*stderr}数组自己定义__iob_func()
在代码中添加下面一句,并且在链接器输入lib里加上legacy_stdio_definitions.lib这个LIB。

extern "C" { FILE __iob_func[3] = { *stdin,*stdout,*stderr }; }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值