在现有装置上安装gcc-2.7.2

在现有装置上安装gcc-2.7.2,gcc,installation,makefile,Gcc,Installation,Makefile,在阅读了安装Festival的要求之后,我正在尝试安装gcc-2.7.2。在我的工作站上,我安装了gcc 4.4.1。我在运行make时遇到问题。下面是我如何运行make: make |&tee make.log 错误消息如下所示: decl.c: In function ‘push_class_level_binding’: decl.c:3606: error: lvalue required as increment operand decl.c中的违规行是:obstack\u ptr

在阅读了安装
Festival
的要求之后,我正在尝试安装gcc-2.7.2。在我的工作站上,我安装了gcc 4.4.1。我在运行
make
时遇到问题。下面是我如何运行
make

make |&tee make.log

错误消息如下所示:

decl.c: In function ‘push_class_level_binding’:
decl.c:3606: error: lvalue required as increment operand 
decl.c
中的违规行是:
obstack\u ptr\u grow(&decl\u obstack,x)

上述函数返回
void
。查看文件
obstack.h
中的函数定义显示:

#define obstack_ptr_grow(OBSTACK,datum)                 \
__extension__                               \
({ struct obstack *__o = (OBSTACK);                 \
   if (__o->next_free + sizeof (void *) > __o->chunk_limit)     \
     _obstack_newchunk (__o, sizeof (void *));              \
   if (!__o->alloc_failed)                      \
     *((void **)__o->next_free)++ = ((void *)datum);            \
   (void) 0; })
这里只有一个增量操作。我不知道如何改变它,使错误消失。还是我找错地方了

欢迎任何帮助


附言:如果需要更多信息,请告诉我。

如果电影节的人建议2.7.2,他们的项目会因为某种原因被完全放弃。事实上因此,如果你在另一篇文章中遇到类似的问题,请继续向上游报告。

不要这样做。尝试使用最新的GCC编译代码。如果需要,请修补节日代码。但是2.7.2是一个蹩脚的编译器w.r.t.最近的GCC4.6编译器。我做了。结果是:-我尝试了几乎所有的方法,最后考虑重新安装一个由节日工作人员自己建议的编译器。你可以编辑他们的代码,至少可以删除-pedantic标志。@Sriram:如果节日工作人员建议2.7.2,他们的项目会因为某种原因被完全放弃。事实上。因此,如果你在另一篇文章中遇到了类似的问题,请继续向上游报告。这意味着节日开发商。他们有一个联系页面是有充分理由的。@thiton:那一定是一个主要的D-OH!等我一等。。你说得对,gcc 2.7.2版本是针对festival 1.4的,而我安装的版本是2.1,它也与gcc 4.4兼容。他们发布的文档是针对festival 1.4的(它们看起来是最完整的,并且在搜索结果中作为最相关的返回)。因为这似乎不是一个问题,除非你想把你的评论变成一个答案,否则我将删除它。。