首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tcl的多个版本

Tcl的多个版本
EN

Stack Overflow用户
提问于 2013-01-23 00:44:55
回答 2查看 1.2K关注 0票数 0

在从源代码构建和安装(全局) Tcl的新版本时,除了重新链接/usr/local/bin/tclsh并希望链接到新版本之外,是否有什么特别的事情需要考虑?

我知道解释器可执行文件tclsh和wish是以不同的名称安装的,但是include和library文件呢?当我构建eggdrop的时候,它会链接到最新的版本吗?手册页如何-旧的会被新的覆盖吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-23 01:27:01

对于这种情况,通常的方法是配置构建,使其安装在单个目录下( Windows方法),例如,在/opt/tcltk/8.6下。这样,您就不会与其他版本发生冲突,卸载只需在该目录上运行rm -rf即可。不过,这种方法也有其缺点:

  • 你必须在新的层次结构下链接(一些)安装的第三方Tcl库。这是因为Tcl从它自己的location.
  • /opt/tcltk/8.6/bin中导出了一组路径来查找不会在$PATH.

中列出的库

对于某些OSes,另一种(可能更明智的)方法是执行“后端”,即获取所需Tcl/Tk版本的源包,并使其针对已安装的OS版本进行构建;然后以正常方式安装生成的包。在不同版本的Tcl/Tk可以共同安装的系统上(例如,Debian及其衍生产品),这可能提供了最合理的解决方案。

至于后一种情况下的手册页,在Debian中,它们最终被打包到一个单独的包中,不需要安装;所以您只需选择一个可用的文档包并安装它即可。

票数 1
EN

Stack Overflow用户

发布于 2013-01-23 01:28:54

就存在多个版本而言,这是一件很正常的事情(通过在构建时将--prefix选项设置为configure来完成此操作),并且这种情况已经持续了很长一段时间。如果可能的话,你可能会想要避免在一个版本中有多个补丁级别,但是,比如说,8.4,8.5和8.6共同安装是完全可以的。您还希望将不同的安装放在不同的目录中,并且将未版本化的tclsh名称链接到您想要的名称是正确的(尽管我只使用版本化的可执行文件名称)。

让两个手册页很好地共存的唯一方法是将它们安装在单独的目录树中,并更新MANPATH环境变量以指向正确的环境变量(除非您有一个man可执行文件,它将直接指向手册页的路径-有些可以,有些不可以-这很难做到)。如果你可以忍受在线,我们在http://www.tcl.tk/man/上有官方的文档的超文本标记语言版本,其中包括所有重要的版本,可以追溯到相当长的时间。

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

https://stackoverflow.com/questions/14463645

复制
相关文章

相似问题

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