首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用gcc 3.4.5编译TCL 7.6.2

使用gcc 3.4.5编译TCL 7.6.2
EN

Stack Overflow用户
提问于 2011-06-09 06:09:33
回答 1查看 451关注 0票数 0

我正在使用gcc 3.4.5编译TCL 7.6p2。我使用的是CentOS 5.5。在make命令执行过程中,我得到以下错误:

代码语言:javascript
复制
./../generic/tclPosixStr.c: In function `Tcl_ErrnoId':
./../generic/tclPosixStr.c:340: error: duplicate case value
./../generic/tclPosixStr.c:328: error: previously used here
./../generic/tclPosixStr.c: In function `Tcl_ErrnoMsg':
./../generic/tclPosixStr.c:787: error: duplicate case value
./../generic/tclPosixStr.c:775: error: previously used here
make: *** [tclPosixStr.o] Error 1

任何提示都将不胜感激。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-09 16:56:01

您正在尝试使用多年不受支持的版本。因此,最好的方法是修改源代码,注释掉那些switch语句中的违规案例。或者切换到有人愿意支持的东西(但这是你的决定)。

详细说明: EOPNOTSUPP似乎与ENOTSUP的值相同;注释掉与EOPNOTSUPP关联的每组三行(或者至少是带有case的行;周围的#ifdef机器是无害的),以使问题消失。或者,您可以支持所有非旧式版本中存在的更改,即将#ifdef行改进为:

代码语言:javascript
复制
#if defined(EOPNOTSUPP) &&  (!defined(ENOTSUP) || (ENOTSUP != EOPNOTSUPP))

不过,请不要费心将其报告为bug。不支持Tcl 7.6p2。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6285878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档