centos7或centos6中如何編譯安裝源碼程序包

yum倉庫配置、程序的編譯安裝

源碼程序包就是源代碼的可見的軟件包,相比于rpm包,源碼包的好處在于:

  1. 用戶可以根據自己的需求定制安裝
  2. 可以進行二次開發

 

源碼程序包的打包格式一般為file.tar.gz file.tar.bz2或file.src.rpm

file.tar.gz file.tar.bz2格式的解包命令為:

tar -jvxf file.tar.bz2

tar -zvxf file.tar.gz

 

在編譯程序前,需要配置好yum倉庫

在/etc/yum.repos.d/目錄下,創建repo文件

vim base.repo

文件中寫入倉庫的具體配置信息(這里已本地centos光盤鏡像作為yum源)

[base]

name=centos7 cd? # 可有可無,不寫會警告

baseurl=file:///misc/cd?? #yum源地址,repodate的父目錄路徑

gpgcheck=0? #關閉包檢查,如果不關閉,則需要加載密匙文件

gpgkey=file:///misc/cd/RPM-GPG-KEY-CentOS-7? #加載密匙,關閉檢查可以不寫

enable=1? #可以不寫,默認為0(0 不使用這個源 ?1 使用)

 

也可以使用國內一些網站的源(阿里云)同時配置多個倉庫

[epel]

name=aliyun epel

baseurl= https://mirrors.aliyun.com/epel/7/x86_64/

gpgcheck=0

配置完成使用命令查看倉庫是否配置成功

yum repolist

 

如何編譯安裝源碼包

httpd-2.4.29.tar.bz2 為例

解壓包之后,一般都能發現README(或reame)和INSTALL( 或install),文檔里會告訴我們如何安裝。

1

在編譯安裝前,需要在linux中安裝一些開發工具包 Development Tools 等

yum groupinstall “Development Tools” -y

 

碼編譯安裝三步驟:

1、./configure

可以通過選項傳遞參數,指定啟用特性、安裝路徑等,執行時會參考用戶的指定以及Makefile.in文件生成Makefile

具體選項可以通過命令./configure – -help 來查看

2

比較重要的一個參數是 –prefix ,用–prefix 參數,我們可以指定軟件安裝目錄

比如指定安裝到/app/httpd24下,執行命令

./configure – -prefix=/app/httpd24

執行過程中會多次提示需要依賴其他包,我們把依賴的包安裝好之后在重新執行此命令

2、make ? ? ? ?#根據Makefile文件,構建應用程序

3、make install ? ? ? ? #復制文件到相應路徑

到此,編譯安裝已基本完成

 

最后,需要更改PATH變量

vim /etc/profile.d/path.sh

寫入

PATH=/app/httpd24/bin:$PATH

啟動服務

進入安裝目錄,執行

./apachectl start

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/89203

(3)
oranixoranix
上一篇 2017-12-02
下一篇 2017-12-02

相關推薦

  • 關于tar命令的一些方法

    tar 解壓縮文件時只有當文件格式中有tar才能使用,否則使用其他單獨的特定解壓縮工具,例如uncompress,gzip ,bzip2.xz等等 tar壓縮解壓縮命令詳解 tar命令詳解 -c: 建立壓縮檔案 -x:解壓 -t:查看內容 -r:向壓縮歸檔文件末尾追加文件 -u:更新原壓縮包中的文件 這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命…

    Linux干貨 2016-08-29
  • Linux文件查找之locate、find詳解

     locate命令詳解 locate命令其實是find -name的另一種寫法,但是要比后者快得多,原因在于它不搜索具體目錄,而是搜索一個數據庫文件,這個數據庫中含有本地所有文件信息。Linux系統自動創建這個數據庫,并且每天自動更新一次,所以使用locate命令查不到最新變動過的文件。為了避免這種情況,可以在使用locate之前,先使用updat…

    Linux干貨 2016-08-16
  • Linux內核編譯以及自制Linux系統

    內核編譯 單內核體系設計、但充分借鑒了微內核設計體系的優點,為內核引入模塊化機制。   內核組成部分: kernel: 內核核心,一般為bzImage,通常在/boot目錄下,名稱為vmlinuz-VERSION-RELEASE; kernel object: 內核對象,一般放置于/lib/modules/VERSION-RELEASE/ [ ]:…

    2016-09-21
  • rpm包管理(二)

    查詢查詢庫文件包查詢[select-options][query-options]licdR常用的查詢用法:卸載:二進制文件的恢復包效驗使用rpm命令導入公鑰(KEY文件)驗證rpm包來源(光盤)的來源及完整性檢查包安裝后生成的文件,是否發生過變動RPM包管理器的數據庫如果某個rpm相關內容被刪除如果rpm命令的包被刪除了信息庫被刪除了刪除/usr/bin下…

    Linux干貨 2016-09-19
  • 馬哥教育網絡班22期+第9周課程練習 忍者亂太郎喻成

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現; #!/bin/bash declare -i user_can_not_login_count; declare -i user_can_login…

    Linux干貨 2017-01-03
  • 計算機編程簡史圖

       這個圖片太經典了,本來想翻譯的,后來覺得這么經典的圖片可能早已被人翻譯了,簡單的Google一下,果然有人翻譯了。那我就把英文版和中文版都轉過來吧。我們可以看到,其中很大一部分人都和Unix有著不解之緣(參見《Unix傳奇上篇,Unix傳奇下篇》) 英文原版 中文翻譯版 什么也不說了,直接上圖(圖片比較大,單擊圖片看大圖) 計算機編…

    Linux干貨 2015-04-02
欧美性久久久久