mit-scheme依赖关系的解决

前端之家收集整理的这篇文章主要介绍了mit-scheme依赖关系的解决前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

sudo apt-get install mit-scheme

下列的软件包有不能满足的依赖关系:

mit-scheme: 依赖: libltdl3 (>= 1.5.2-2) 但却无法安装它

到这个网站下载一个libtdl3deb,安装之,然后再装mit-scheme

mit-schemeSICP(计算机程序构造与解释)使用的教学语言,现在也是GNU官方维护的一个软件。可惜的是,GNU只提供Debian,Ubuntu,MacOSXWindows的二进制包,对于其他LinuxBSD的发行版本只提供源码。所以,如果不是用上面支持4种操作系统,大部分情况下只能从源码编译。

本文用于指导从源码编译安装mit-scheme的读者,希望为中国人学习scheme能提供一点帮助(提醒:FreeBSDports目录里有mit-scheme,安装起来还是很容易的,不在此文讨论范围)。本文参考了mit-scheme源码包里README文档,结合mit-scheme20080130版本和Fedora8的实际情况做了简化操作,我们假定你:

1.机器是x86的平台

2.看不太懂,或者不太愿意看源码里带的自述文件

3.安装Fedora时装好了必要的开发环境(一般这都不会有什么问题)

4.http://www.gnu.org/software/mit-scheme/下载了最新的为DebianGNU/Linux编译的二进制包mit-scheme-20080130-ix86-gnu-linux.tar.gz,以及portablec的通用源码包mit-scheme-c-20080130.tar.gz

5.2个包被解压到/tmp,构成了目录树:/tmp/{bin,lib,mit-scheme-c-20080130}。这不是必须的,只是为了叙述的方便。如果你不知道怎么作,只需要进入存放着下载源码包的目录,分别执行:tarzxvfmit-scheme-c-20080130.tar.gz-C/tmp

tarzxvfmit-scheme-20080130-ix86-gnu-linux.tar.gz-C/tmp

首先,要解决一个鸡和蛋的问题:要从源码编译mit-scheme,你必须已经有了一个能工作的mit-scheme

是不是像在开玩笑?编译的脚本需要调用scheme,而你编译这个scheme正是为了有一个能用的scheme...

下面我们来解决这个问题:

进入到源码的目录的/tmp/mit-scheme-c-20080130/src/microcode下面,分别执行

#./configure

#make

这样,我们就产生了一个和自身平台相关的scheme执行文件。现在我们用其替换为DebianGNU/Linux编译的二进制包里的执行文件:在目前这个发行版本,你可能会发现解压后/tmp/bin/下面有多个执行文件mit-scheme-native是真正的文件,而其他几个都是mit-scheme-native的符号链接(这可能是为了保证向前兼容);

执行#cp-f/tmp/mit-scheme-c-20080130/src/microcode/scheme/tmp/bin/mit-scheme-native即可替换。

接下来设置好这个scheme的运行环境:

#exportMITSCHEME_LIBRARY_PATH="/tmp/lib/mit-scheme"

#exportPATH="$PATH:/tmp/bin/"

现在,如果你在终端键入scheme-no-init-file,应该会看到sheme解释器起来了。在=>提示符后键入(exit)退出

如果以上步骤没出错,现在你便有了一个可以编译mit-scheme的环境。进入/tmp/mit-scheme-c-20080130/src源码目录,确保变量MITSCHEME_LIBRARY_PATH/tmp/lib/mit-schemePATH中有/tmp/bin/

接下来,按顺序执行

#./Setup.sh

#./configure

#make#这一步需要时间稍长

#makeinstall#需要root身份

进入/tmp/mit-scheme-c-20080130/doc,执行./configure,make,makeinstall(需要ROOT身份)安装文档。

如果你喜欢用emacs调用mit-scheme,可以进入/tmp/mit-scheme-c-20080130/etc/,把xscheme.el拷贝到emacs的加载路径
#cp-fpxscheme.el/usr/share/emacs/site-lisp/
现在,在emacsM-x,键入load-library,回车后再键入xscheme

猜你在找的设计模式相关文章