注:本系列文章讲述对程序员而言windows和类unix操作系统(*nix)在使用上的异同,并以*nix为主。涵盖内容包括程序安装、日常操作、编辑器,IDE,管道,GUI vs CLI......,文章宗旨在于引导有经验的windows程序员顺利过渡到*nix下。
windows下安装软件的一般步骤是解压缩,找到setup.exe,点击它,然后next,选安装目录,next,选可选组件,next,.....完成
*nix类似,所不同的是由命令行完成:
tar -xzf xxx-n.n.n.tgz ; cd xxx-n.n.n; ./configure; make; make intall
上面的tar是解压缩,./configure是配置,make是编译,make install是安装。
需要考虑的绝大部分事情是配置时来做的。
配置的时候用命令行参数来指定:
./configure --help
可以获得可用的参数说明。
比较通用的一个参数是--prefix,例如
# 安装到用户的主目录 ./configure --prefix=$HOME # 安装到/usr目录 ./configure --prefix=/usr
我们知道windows软件一般都把自身配置文件,程序文件,库文件都指定到一个目录中,例如c:/program files/xxx
其下的子目录结构就是软件作者自己随意。
*nix软件配置时的prefix参数也是指定安装目录,但是
区别1:安装目录的下级子目录有一套约定的命名,例如$prefix/bin放程序文件,$prefix/etc放配置文件,$prefix/lib放库文件等等。
区别2:大部分的*nix软件会安装到相同的prefix下面,通常是/usr、/usr/local。
此外,configure还常用的参数有--with-xxx,--without-xxx,--enable-xxx,--disable--xxx。前两种决定是否复用其它软件,后两种决定本软件的某特性是否可用。
上面说的是从源码安装得大致过程,二进制安装要简单的多(以gentoo发行版为例):
emerge -K xxx
对于其它发行版,RedHat使用rpm,Debian使用apt-get,FreeBSD用pkg_add等等。
使用二进制安装意味着失去定制的特性,因为二进制包是预先用某组配置参数从源码编译好了的。