注:本系列文章講述對程式員而言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等等。
使用二進制安裝意味着失去定制的特性,因為二進制包是預先用某組配置參數從源碼編譯好了的。