fedora下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-field $ echo "0" > /proc/sys/kernel/randomize_va_space (PS :安装完毕重新打开exec-field的时候,把上面两句命令的”0″变成”1″,就行了) 这个时候,就可以再进行重新配置,编译了。 先清除掉原来的安装: $ make clean $ make distclean 继续安装 $ ./configure $ make $ make install本文出自 51CTO.COM技术博客 |


xiaomagee
博客统计信息
热门文章
最新评论
友情链接