Fedora下Emacs的安裝
(來源:http://www.linuxdiyf.com/bbs/viewthread.php?tid=70850&highlight=Emacs%2B%B0%B2%D7%B0)
(1)軟件下載地址:http://download.chinaunix.net/download.php?id=4879&ResourceID=2622
(2)解壓
$ 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
(3)配置
$ ./configure
(4)編譯
$ 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/kernal/exec-field
$ echo “0" > /proc/sys/kernal/randomize_va_space
(PS :安裝
完畢重新打開exec-field的時候,把上面兩句命令的”0″變成”1″,就行了)
(5)重新配置
這個時候,就可以再進行重新配置,編譯了。
先清除掉原來的安裝
:
$ make clean
$ make distclean
(6)繼續安裝
$ ./configure
$ make
$ make install
大功告成!