新项目中有一块要通过Shell脚本来与工作流和数据库交互,这块以前没做过,觉得很有挑战,跟Leader申请了一下,准备由我负责Shell脚本和Oracle 数据库方面的开发。先来研究一下Shell。工欲善其事必先利其器,早就听说Emacs 的大名,以前只在Windows下浅尝辄止,这次在Linux上要好好整整。
1、下载源代码
首先下载最新Emacs源代码,当前是23.2。
2、然后把依赖的一些包装上去。
依赖的实在太多了,偷懒用yum了 (其实 emacs 也可以用 yum 来安装的,只是不是最新版本 yum -y install emacs)。
yum install –y Xaw3d-devel
yum install –y libjpeg-devel
yum install –y libpng-devel
yum install -y libtiff-devel
yum install -y giflib-devel
3、解压,进入目录
./configure
make
src/emacs -q(检查)
报错啦:
X connection to localhost:10.0 broken (explicit kill or server shutdown).
把X window (Xming,VcXsrv等等)开启,再试,又报:
No suitable font was found
查看文档,有提到字体那块,XFree86基本包含了所有要用到的字体,干脆就装个XFree86吧。
4、安装XFree86
同样先下载源代码,然后解压,装起来也挺麻烦的:
gzip -d < XFree86-4.8.0-src-1.tgz | tar vxf -
gzip -d < XFree86-4.8.0-src-2.tgz | tar vxf -
gzip -d < XFree86-4.8.0-src-3.tgz | tar vxf -
gzip -d < XFree86-4.8.0-src-4.tgz | tar vxf -
gzip -d < XFree86-4.8.0-src-5.tgz | tar vxf -
gzip -d < XFree86-4.8.0-src-6.tgz | tar vxf -
gzip -d < XFree86-4.8.0-src-7.tgz | tar vxf -
官方建议不要直接在解压目录来进行编译安装,而是另建一个shadow 目录来安装,理由如下:
1、外部文件不在CVS的控制之下,不会被接触。
2、为从同样来源的几个不同的操作系统或硬件结构的构建XFree86提供了的更好的灵活性; 通过加载只读NFS来共享。
3、不同的配置选项可以创建一个host.def文件的的拷贝来定制化。
说了半天闲话,操作吧:
cd the directory containing the xc directory
mkdir build
cd build
lndir ../xc
接下来开始编译啦。
XFree 也不省事啊,编译的时候报出了一堆依赖错误。
先把这三个装上:bison,flex,ncurses-devel
yum install -y bison
yum install -y flex
yum install -y ncurses-devel
Ok,开编吧。
make World > World.log 2>&1
你可以直接make,官方建议把日志记到 World.log 里,然后通过 tail -f World.log 来查看。
经过三次失败后(上面的三个依赖没装导致的),终于出现:
Full build of XFree86 version 4.8.0 (15 December 2008) complete.
长叹一声,真是事不过三啊!
5、完成Emacs安装
回到Emacs目录,再次检查(注意把X window 开启)。
src/emacs –q
终于成功啦!
好最后敲一个 make install
大功告成!