LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 784|回复: 2

开发环境配置的问题

[复制链接]
发表于 2008-5-31 00:13:46 | 显示全部楼层 |阅读模式
最近编译东西的时候,总是提示缺少头文件的引用。
而且大部分都是 <string.h>, <stdlib.h>这两个。 这个是默认就应该有的吧。

还有在编译Google Gadgets For Linux的时候,有个错误信息是
contentarea_element.cc:427: error: no matching function for call to ‘find(__gnu_cxx::__normal_iterator<ggadget::ContentItem**, std::vector<ggadget::ContentItem*, std::allocator<ggadget::ContentItem*> > >, __gnu_cxx::__normal_iterator<ggadget::ContentItem**, std::vector<ggadget::ContentItem*, std::allocator<ggadget::ContentItem*> > >, ggadget::ContentItem*&)’
contentarea_element.cc: In member function ‘bool ggadget::ContentAreaElement::Impl::RemoveContentItem(ggadget::ContentItem*)’:
contentarea_element.cc:468: error: no matching function for call to ‘find(__gnu_cxx::__normal_iterator<ggadget::ContentItem**, std::vector<ggadget::ContentItem*, std::allocator<ggadget::ContentItem*> > >, __gnu_cxx::__normal_iterator<ggadget::ContentItem**, std::vector<ggadget::ContentItem*, std::allocator<ggadget::ContentItem*> > >, ggadget::ContentItem*&)’


我看了下相应的代码, 好像是
   ContentItems::iterator it = std::find(content_items_.begin(),
                                          content_items_.end(),
                                          item);
std::find出的问题。

这个应该如何配置呢?
发表于 2008-5-31 10:17:32 | 显示全部楼层
这是gcc升级到4.3之故。
解决办法:
1)gcc降级到小于4.3;
2)修改要编译的源码(头文件),参考:
http://gcc.gnu.org/gcc-4.3/porting_to.html
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-31 13:18:30 | 显示全部楼层
了解了, 多谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表