【轉載】絕對乾貨!Linux小白最佳實務:《超容易的Linux系統管理入門書》(連載九)如何通過原始碼安裝軟體

來源:互聯網
上載者:User

除了使用Linux的包管理機制進行軟體的安裝、更新和卸載,從原始碼進行軟體的安裝也是非常常見的,開源軟體提供了原始碼包,開發人員可以方便的通過原始碼進行安裝。從源碼安裝軟體一般經過軟體配置、編譯軟體、執行安裝3個步驟。

想每天聽到小妞的語音播報,想學更多學校裡和書本上學不到的IT技術或技能,歡迎關注公眾號xiniubook2008。或加微博:我的圖書我做主,參加活動,免費獲書。

7.3.1  軟體配置

由於軟體要依賴系統的底層庫資源,軟體配置主要功能為檢查當前系統軟硬體環境,確定當前系統是否滿足當前軟體需要的軟體資源。配置命令一般如下:

[root@CentOSvim73]#./congure –prefix=/usr/local/vim73

其中的--prefix 用來指定安裝路徑,編譯好的二進位檔案和其他檔案將被安裝到此處。

不同的軟體configure 指令碼都提供豐富的選項,在執行完成後,系統會根據執行的選項和系統的配置產生一個編譯規則檔案Makefile。要查看當前軟體配置時支援哪些參數,可以使用./configure --help命令。

7.3.2  編譯軟體

在配置好編譯選項後,系統已經產生了編譯軟體需要的Makefile,然後利用這些Makefile進行編譯。編譯軟體執行make命令:

[root@CentOSvim73]# make

執行make 命令後make 會根據Makefile 檔案來產生目標檔案,如二進位程式等。

7.3.3  軟體安裝

編譯完成後,執行make install 命令來安裝軟體:

[root@CentOSvim73]# #make install

一般情況下安裝完成後就可以使用安裝的軟體了,如沒有指定安裝路徑,一般的軟體會備安裝在/usr/local下面建立對應的檔案夾,部分軟體二進位檔案會安裝在/usr/bin或/usr/local/bin/目錄下,對應的標頭檔會安裝到/usr/include,軟體協助文檔會安裝到/usr/local/share目錄下。

如果指定目錄,則會在指定目錄建立相應的檔案夾。安裝軟體完畢後使用該軟體需要使用絕對路徑或對環境變數的進行配置,也就是需要把當前軟體二進位檔案的目錄加入到系統的環境變數PATH中。

Vim是一款優秀的文字編輯器,豐富擴充了vi編輯器的很多功能,被廣大開發人員廣泛使用,同類型的編輯軟體還有Emacs等。通過樣本7-6示範如何通過原始碼安裝該軟體。樣本中同時包含了安裝軟體時遇到的問題及解決方案。

(1)首先查看系統中有無Vim,如有先進行卸載,以免混淆。

【樣本7-6】

#查看系統中是否有Vim軟體

[root@CentOS~]# vim --version|head

VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Apr 112013 03:32:13)

#查看vim檔案位置

[root@CentOS~]# which vim

/usr/bin/vim

#查看當前軟體屬於哪個軟體包

[root@CentOS~]# rpm -qf /usr/bin/vim

vim-enhanced-7.2.411-1.8.el6.x86_64

#將當前已安裝的軟體包卸載掉

[root@CentOS~]# rpm -e vim-enhanced-7.2.411-1.8.el6.x86_64

#查看檔案是否還存在

[root@CentOS~]# ls -lhtr /usr/bin/vim

ls: cannot access /usr/bin/vim: No such file ordirectory

(2)經過上面的步驟後,確認系統中已經不存在Vim,下面進行Vim的安裝。Vim最新版可以在網站http://www.vim.org/下載。

【樣本7-6】續

[root@CentOS~ ]#cd /data/soft

#上傳原始碼包

[root@CentOSsoft]# rz -bye

rz waiting to receive.

開始 zmodem 傳輸.  按 Ctrl+C 取消.

Transferring vim-7.3.tar.bz2...

  100%    8867 KB 4433 KB/s 00:00:02       0 錯誤

#將原始碼包解壓

[root@CentOSsoft]#  tar xvf vim-7.3.tar.bz2

vim73/

vim73/Makefile

vim73/src/Makefile

vim73/configure

vim73/src/configure

vim73/src/auto/configure

#部分結果省略

vim73/src/configure.in

vim73/src/

[root@CentOSsoft]# cd vim73

#查看檔案清單,部分結果省略

[root@CentOSvim73]# ls

configure README_unix.txt Makefile src

#第1步:進行軟體的配置

[root@CentOSvim73]# ./configure

configure: creating cache auto/config.cache

checking whether make sets $(MAKE)... yes

checking for gcc... gcc

#部分結果省略

checking for tgetent()... configure: error: NOTFOUND!

      Youneed to install a terminal library; for example ncurses.

      Orspecify the name of the library with --with-tlib.

#某些庫不存在,尋找到並安裝,此時用的是rpm包安裝方式

[root@CentOSvim73]# cd -

/cdrom/Packages

[root@CentOSPackages]# ls -l ncurses-devel-5.7-3.20090208.el6.x86_64.rpm

-r--r--r--. 2 root root 657212 Jul  3  2011ncurses-devel-5.7-3.20090208.el6.x86_64.rpm

#安裝依賴的包

[root@CentOSPackages]# rpm -ivh ncurses-devel-5.7-3.20090208.el6.x86_64.rpm

warning:ncurses-devel-5.7-3.20090208.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature,key ID c105b9de: NOKEY

Preparing...               ########################################### [100%]

  1:ncurses-devel         ########################################### [100%]

[root@CentOSPackages]# cd -

/data/soft/vim73

#再次進行軟體的配置

[root@CentOSvim73]# ./configure --prefix=/usr/local/vim73

configure: creating cache auto/config.cache

checking whether make sets $(MAKE)... yes

#部分結果省略

checking whether we need -D_FORTIFY_SOURCE=1... yes

configure: creating auto/config.status

config.status: creating auto/config.mk

config.status: creating auto/config.h

#第2步:進行軟體的編譯

[root@CentOSvim73]# make

If there are problems, cd to the src directory andrun make there

cd src && make first

make[1]: Entering directory `/data/soft/vim73/src'

mkdir objects

CC="gcc -Iproto -DHAVE_CONFIG_H         " srcdir=. sh ./osdef.sh

gcc -c -I. -Iproto -DHAVE_CONFIG_H     -g -O2 -D_FORTIFY_SOURCE=1       -o objects/buffer.o buffer.c

#部分結果省略

(3)經過上面的步驟後,Vim軟體已經編譯完成,下面繼續Vim的安裝。

【樣本7-6】續

#第3步:進行Vim的安裝

[root@CentOSvim73]# make install

  Startingmake in the src directory.

  If thereare problems, cd to the src directory and run make there

  cd src&& make install

  make[1]:Entering directory `/data/soft/vim73/src'

  if test -f/usr/local/vim73/bin/vim; then \

            mv -f /usr/local/vim73/bin/vim/usr/local/vim73/bin/vim.rm; \

           rm -f /usr/local/vim73/bin/vim.rm; \

          fi

  cp vim/usr/local/vim73/bin

#部分結果省略

[root@CentOSvim73]# vim --version

VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Apr 112013 03:32:13)

(4)至此Vim軟體安裝完成。如需使用,需要使用絕對路徑或設定環境變數PATH。

【樣本7-6】續

#使用vim發現命令不存在

[root@CentOSvim73]# vim –version

-bash: /usr/local/bin/vim: No such file or directory

[root@CentOSvim73]# cd /usr/local/vim73/

[root@CentOSvim73]# ls

bin  share

[root@CentOSvim73]# export PATH=/usr/local/vim73/bin/:$PATH:.

[root@CentOSvim73]# vim --version

VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Apr 112013 03:32:13)

以上樣本示範了如何通過原始碼安裝指定的軟體,安裝過程經過軟體配置、軟體編譯和軟體安裝等步驟。安裝軟體時如果指定了安裝目錄沒,則需要使用絕對路徑或將該軟體的二進位檔案所在的目錄加入到系統變數PATH路徑中,以便在不使用絕對路徑時仍然可以使用安裝的軟體。

 

 

喜歡可以購買《超容易的Linux系統管理入門書》。目前Linux中國正在舉辦互動,寫書評就能拿書!





相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.