CentOS6.4下Emacs24.3的编译安装备忘

Emacs是一个具有强大扩展性的文本编辑器(说IDE或许更准确点),在中,你可以直接通过yum来安装。出于对新版本的热衷,选择了对Emacs24.3进行了编译安装。以下是Mitchell的安装过程,关于编译安装的一些介绍可以参看前一篇编译安装介绍

首先,自然是要获取到Emacs的源代码,源代码在Emacs的官方网站上可以找到下载的地方(其中一个地址);第二个就是依赖了,版本需要依赖autoconf(2.65或更新),makeinfo(4.7或更新),makeinfo在Texinfo里面。

编译过程是反向的,先将依赖,完成之后,再编译安装Emacs本身。

autoconf的编译安装,由于CentOS本身自带autoconf,但是autoconf的版本不符合要求,因此先删除自带的autoconf。

yum erase autoconf

用这种方法移除后在更新,涉及到依赖包:automake,intltool,libtool。我们还需要将这些新版本安装回来。安装automake,intltool,libtool的过程简要备录如下:

automake安装:

$ wget http://ftp.gnu.org/gnu/automake/automake-1.14.1.tar.xz
$ ./configure --prefix=/usr --docdir=/usr/share/doc/automake-1.14.1
$ make
$ sed -i "s:./configure:LEXLIB=/usr/lib/libfl.a &:" t/lex-{clean,depend}-cxx.sh
$ make -j4 check

TIPS:这个后缀的文件名不太常见,解压方法可以参考:Linux下的压缩解压命令汇总

make check的信息如下:

   ============================================================================
   Testsuite summary for GNU Automake 1.14.1
   ============================================================================
   # TOTAL: 2761
   # PASS:  2455
   # SKIP:  266
   # XFAIL: 40
   # FAIL:  0
   # XPASS: 0
   # ERROR: 0
   ============================================================================

这表示成功,可以安装

# make install

libtool安装:

$ wget http://mirror.hust.edu.cn/gnu/libtool/libtool-2.4.tar.xz
$ wget http://mirror.hust.edu.cn/gnu/libtool/libtool-2.4.tar.xz.sig

$ tar xvf libtool-2.4.tar.xz
$ cd libtool-2.4/
$ ./configure --prefix=/usr
$ make
$ make check

# make install

intltool安装:

$ wget http://launchpad.net/intltool/trunk/0.50.2/+download/intltool-0.50.2.tar.gz
$ ./configure --prefix=/usr &&
$ make

# make install &&
   install -v -m644 -D doc/I18N-HOWTO \
   /usr/share/doc/intltool-0.50.2/I18N-HOWTO

makeinfo(Texinfo5.2)安装类似,这里只给出下载地址:

$ wget http://ftp.gnu.org/gnu/texinfo/texinfo-5.2.tar.xz

Emacs24.3编译安装:

$ wget http://mirror.hust.edu.cn/gnu/emacs/emacs-24.3.tar.gz
$ wget http://mirror.hust.edu.cn/gnu/emacs/emacs-24.3.tar.gz.sig
$ ./configure --prefix=/usr         \
               --with-gif=no &&
  make bootstrap

# make install &&
  chown -v -R root:root /usr/share/emacs/24.3

TIPS:这里下载了签名文件,你可以通过签名文件来验证程序的合法性,具体验证方法你可以参照Linux下校验下载文件的完整性

Emacs配置中的更多参数可以查看文档,--prefix是Emacs程序的安装路径,--with-gif=no在libungif没有安装的情况下必须设定的。

安装完成后,我们能在安装目录找到emacs,ctags,ebrowse,emacsclient,etags,grepchangelog和rcs-checkin程序。

至此,Emacs就算安装完成,你可以运行emacs试试。

 TIPS:

代码段中$前缀表示为可以在非root账户下进行;#表示在root账户下进行。

Sunday, April 27, 2014 | Unix & Linux

文章评论

  • # re: CentOS6.4下Emacs24.3的编译安装备忘
    collect2: ld returned 1 exit status.请教这个问题如何解决。
  • # re: CentOS6.4下Emacs24.3的编译安装备忘
    @weipan:
    不知道你Emacs这个问题现在有没有解决?如果没有解决,请告知上下文中的详细报错信息,我尝试看看能否帮到你。
  • # re: CentOS6.4下Emacs24.3的编译安装备忘
    移除了autoconf之后,再运行./configure提示说需要autooconf.....
    这。。。
  • # re: CentOS6.4下Emacs24.3的编译安装备忘
    @latentlong:你要更新autoconf,不是说要移除就完事了。
  • # re: CentOS6.4下Emacs24.3的编译安装备忘
    是我糊涂了额。。我后来就用yum安装了23版本(默认版本)的emacs,然后再去编译24版本的emacs。然后--prefix=/usr
  • # re: CentOS6.4下Emacs24.3的编译安装备忘
    @latentlong:
    啊哦,我也这么干过。

发表评论

Please add 3 and 2 and type the answer here:

关于博主

  一枚成分复杂的网络IT分子,常年游弋于电子商务,属于互联网行业分类中的杂牌军。当前正在待业中...