Fedora7下Emacs的安装

来源:互联网 发布:现金流量表的数据来源 编辑:程序博客网 时间:2024/05/17 02:22
Fedora7下Emacs的安装


Emacs的强大不需要我多说了,呵呵,谁用谁知道,我一直都认为,能称得上NB的软件,是能让用它的人也变得NB起来,无疑Emacs可以称之为NB软件的经典。不过今天弄了好半天才把它安装好,下面记录一下期间出现的一些问题以及解决方案。

Emacs版本:22.0.50

先下载Emacs的稳定版本,据说Emacs-23.*.*不是太稳定,所以决定采用Emacs22,去ChinaUnix找到了安装包 emacs-22.0.50-20050225.tar.gz,点击这里进入下载页面。
接下来是解压安装,安装时应该切换到root用户下。
$ cp emacs-22.0.50-20050225.tar.gz /opt
$ cd /opt
$ tar -xvzf emacs-22.0.50-20050225.tar.gz
这时解压生成一个emacs-22.0.50的目录
$ cd emacs-22.0.50
配置
$ ./configure
编译
$ make
这个时候问题出现了!
无法编译通过,出现了段错误 (Segfault),make的出错提示信息如下:

Dumping under names emacs and emacs-22.0.50.1
**************************************************
Warning: Your system has a gap between BSS and the
heap (19987260 byte). This usually means that exec-shield
or something similar is in effect. The dump may
fail because of this. See the section about
exec-shield in etc/PROBLEMS for more information.
**************************************************
make[1]: *** [emacs] Segmentation fault

从上面的信息我们可以看到,问题出在emace的安装与Linux操作系统2.6内核的安全补丁exec-shield冲突了,exec- shield是针对内存堆栈控制的安全补丁,可以预防一些内存泄露攻击等问题,默认是打开的。现在只需要在安装的过程中把它临时关闭就可以了。
关闭的方法如下:
$  echo "0" > /proc/sys/kernel/exec-shield
$ echo "0" > /proc/sys/kernel/randomize_va_space
(PS :安装完毕重新打开exec-field的时候,把上面两句命令的”0″变成”1″,就行了)

这个时候,就可以再进行重新配置,编译了。
先清除掉原来的安装:
$ make clean
$ make distclean
继续安装
$ ./configure
$ make
$ make install
大功告成 !
原创粉丝点击