源碼包編譯安裝

程序包編譯安裝:

     Application-VERSION-release.src.rpm–> 安裝后,使用rpmbuild命令制作成二進制格式的rpm包,而后再安裝

     源代碼 –> 預處理 –> 編譯 –> 匯編 –> 鏈接 –> 執行

    

     源代碼組織格式:

    多文件:文件中的代碼之間,很可能存在跨文件依賴關系

        C、C++:make(configure –> makefile.in –> makefile)

        java:maven

編譯安裝三步驟:

    ./configure:

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

         (2)檢查依賴到的外部環境

    make

        根據makefile文件,構建應用程序

    make install

    開發工具:

         autoconf:生成configure腳本

         automake:生成makefile.in

    建議:安裝前查看INSTALL,README

開源程序源代碼的獲取:

    官方自建站點:

         apache.org

         mariadb.org

        

    代碼托管:

         SourceForge

         Github.com

         code.google.com

        

c/c++:gcc(GNU C Complier)

編譯C源代碼:

     前提:提供開發工具及開發環境

     開發工具:make,gcc等

     開發環境:開發庫,頭文件

          glibc:標準庫

    通過"包組"提供開發組件

        CentOS 6:"Development Tools" , "Server Platform Development"

第一步:configure腳本

     選項:指定安裝位置、指定啟用的特性

    

     –help:獲取其支持使用的選項

         選項分類:

             安裝路徑設定:

                 –prefix=/PATH/TO/SOMEFILE:指定默認安裝位置

                 –sysconfdir=/PATH/TO/SOMEFILE:配置文件安裝位置

        

             Optional Features:可選特性

                 –disable-FEATURE

                 –enable-FEATURE[=ARG]

                

             Optional Packages:可選包

                 –with-PACKAGE[=ARG]

                 –without-PACKAGE

                

             第二步:make

            

             第三步:make install

    

安裝后的配置:

     (1)導出二進制程序目錄至PATH環境變量中:

         編輯文件/etc/profile.d/NAME.sh

         export PATH=/PATH/TO/BIN:$PATH

        

     (2)導出庫文件路徑

         編輯/etc/ld.so.conf.d/NAME.conf

         添加新的庫文件所在目錄至此文件中

        

     讓系統重新生成緩存:

          ldconfig [-v]

    

     (3)導出頭文件

         基于鏈接的方式實現:

         ln -sv

    

     (4)導出幫助手冊

         編輯/etc/man.config文件

         添加一個MANPATH

    

原創文章,作者:zhai796898,如若轉載,請注明出處:http://www.www58058.com/39412

(0)
zhai796898zhai796898
上一篇 2016-08-23 22:41
下一篇 2016-08-24 10:12

相關推薦

  • 馬哥教育網絡班第21期+第二周課程作業

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 命令 選項 解釋 cp -r 遞歸復制 copy -f 強行復制,若已存在則覆蓋 -i 交互式 -p 保留屬主屬組權限時間戳 -L(不加也可以,默認) (源文件為鏈接)復制指向連接的文件 -P (源文件為鏈接) 以鏈接的方式復制過來 -a 歸檔復制,常用備份 命令 選項 …

    Linux干貨 2016-07-17
  • CentOS7的啟動及Systemd的管理?

    CentOS7的啟動流程     POST–>Boot Sequence–>Bootloader–>kernel+initramfs(initrd)–>rootfs–>/sbin/init    &n…

    Linux干貨 2016-09-21
  • Linux發行版、發行版聯系與區別

    參考這篇文章<2016年最佳Linux發行版排行榜> http://mt.sohu.com/20160128/n436204298.shtml #1 最好的回歸發行版:OpenSUSE OpenSUSE背后的SUSE公司是最古老的Linux企業,成立于Linus Torvalds放出Linux的一年之后。它其實早于Red Hat誕生,同時也是社區…

    Linux干貨 2016-08-15
  • 使用yum源碼編譯安裝程序

    需要的安裝包:httpd-2.2.29.tar.bz2 1、安裝develpment tools     yum groupinstall "Development Tools" 2、下載服務器中的http源安裝包到本地,然后解壓到指定文件夾中 lftp 10.1.0.1:/pub/Sources/…

    Linux干貨 2016-08-24
  • Linux程序包管理

    軟件包管理   API:Application Programming Interface POSIX:Portable OS                程序源代碼–>預處理–…

    Linux干貨 2016-08-29
  • shell腳本編程小節及作業

    使用read命令來接收輸入          使用read來把輸入值分配給一個或多個shell變量:         -p:指定要顯示的提示     &nbsp…

    Linux干貨 2016-08-22
欧美性久久久久