1. 程式人生 > >源碼包編譯安裝過程說明

源碼包編譯安裝過程說明

讀取內容 過程 解壓縮 -o2 wal copy ssa 錯誤提示 獲取

源碼編譯安裝說明

一、源碼包說明

       源碼包是程序員使用特定的格式和語法所書寫的文本代碼,一般由英文單詞組成。
       計算機可以識別的是二進制語言,源碼文件要想在linux上運行,必須經過編譯後運行。

二、源碼包特點:

  • 源碼包的優點:
           源碼包是開源的,可以進行修改發布。安裝時,可以選擇啟用或禁用功能,更加具有靈活性。源碼包是編譯安裝的,更加符合機器的特性,穩定性好。
  • 源碼包的缺點:
           編譯安裝的步驟多,需要手動解決軟件之間的依賴性,比較繁瑣且編譯安裝時間長。編譯過程中如有報錯,初學者很難解決,往往需要解決一系列的問題,對新手不友好。

三、源碼包安裝過程:

       1. 解壓縮源碼包,進入包目錄,一般都會有README文件和INSTALL文件。該文件裏面有如何安裝的說明和註意事項。
       2. 創建生成makefile文件。該文件其實是由configure腳本借助makefile.in模版文件生成的。
       3. make命令進行編譯,該步驟調用gcc編譯器將源碼編譯成可執行文件。
       4. make install命令會把編譯完成的數據復制到指定的目錄中去。

       至此,安裝過程結束。

四、源碼包cmatrix安裝演示:

       1. 下載的源碼包存放在/usr/local/src/目錄下面,解壓縮源碼包,進入源碼包目錄中。

[11:26:17 root@centos7 src]#pwd
/usr/local/src
[11:26:25 root@centos7 src]#ls
cmatrix-1.2a cmatrix-1.2a.tar.gz

[11:26:28 root@centos7 src]#cd cmatrix-1.2a;ls
acconfig.h cmatrix.spec configure.in matrix.fnt README

aclocal.m4 cmatrix.spec.in COPYING matrix.psf.gz stamp-h.in
AUTHORS config.guess INSTALL missing TODO
ChangeLog config.h.in install-sh mkinstalldirs
cmatrix.1 config.sub Makefile.am mtx.pcf
cmatrix.c configure Makefile.in NEWS

       2. 查看該目錄下面的READMEH和INSTALL文件來獲取軟件安裝包的用處和安裝步驟,輸入configure命令查看安裝幫助.

[11:31:33 root@centos7 cmatrix-1.2a]#./configure --help
Usage: configure [options] [host]
Options: [defaults in brackets after descriptions]
Configuration:
--cache-file=FILE cache test results in FILE
--help print this message
--no-create do not create output files
--quiet, --silent do not print `checking...‘ messages
--version print the version of autoconf that created configure

       3. 執行configure腳本,生成makefile文件。

[11:32:55 root@centos7 cmatrix-1.2a]#./configure --prefix=/app/cmatrix

       4.使用make命令從makefile文件中讀取內容,編譯源碼。

[11:51:57 root@centos7 cmatrix-1.2a]#make
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wall -Wno-comment -c cmatrix.c
cmatrix.c:37:20: fatal error: curses.h: No such file or directory
#include <curses.h>
^
compilation terminated.
make: *** [cmatrix.o] Error 1

       編譯過程中出現報錯,安裝停止。錯誤提示,沒有找到curses.h這個文件。嘗試執行yum search curses.h,查找下是否有軟件包包含有此文件。

[11:57:16 root@centos7 cmatrix-1.2a]#yum search curses.h
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
epel: mirror01.idc.hinet.net
============================== Matched: curses.h ===============================
ncurses.x86_64 : Ncurses support utilities
ncurses-base.noarch : Descriptions of common terminals
ncurses-devel.i686 : Development files for the ncurses library
ncurses-devel.x86_64 : Development files for the ncurses library
ncurses-libs.i686 : Ncurses libraries
ncurses-libs.x86_64 : Ncurses libraries
ncurses-static.i686 : Static libraries for the ncurses library
ncurses-static.x86_64 : Static libraries for the ncurses library
ncurses-term.noarch : Terminal descriptions

[12:00:23 root@centos7 cmatrix-1.2a]#yum install ncurses-devel.x86_64 -y

[12:03:59 root@centos7 cmatrix-1.2a]#make
如果編譯過程中仍出現錯誤,建議把整個解壓的目錄都刪除掉,重新解壓進入目錄從頭編譯。

       5. 使用make install命令把軟件安裝在指定的安裝目錄。

[12:04:01 root@centos7 cmatrix-1.2a]#make install
make[1]: Entering directory `/usr/local/src/cmatrix-1.2a‘
/bin/sh ./mkinstalldirs /app/cmatrix/bin
mkdir /app/cmatrix/bin
/usr/bin/install -c cmatrix /app/cmatrix/bin/cmatrix
make install-man1
...

       6. 至此,源碼包安裝完成,進入安裝目錄運行該程序。

[12:09:16 root@centos7 bin]#pwd;ls
/app/cmatrix/bin
cmatrix
[12:09:25 root@centos7 bin]#./cmatrix

       查看下程序執行的酷炫效果:
技術分享圖片

源碼包編譯安裝過程說明