編譯安裝 程式包編譯 編譯安裝 ...
編譯安裝
程式包編譯
程式包編譯安裝:
Application-VERSION-release.src.rpm --> 安裝後,使用 rpmbuild 命令製作成二進位格式的rpm 包,而後再安裝源代碼--> 預處理--> 編譯--> 彙編--> 鏈接--> 執行.
源代碼組織格式:
多文件: 文件中的代碼之間,很可能存在跨文件依賴關係
C 、C++ : make 項目管理器,configure腳本 --> Makefile.in --> Makefile
java: maven
編譯安裝
C 語言源代碼編譯安裝三步驟:
1。./configure
(1) 通過選項傳遞參數,指定啟用特性、安裝路徑等;執行時會參考用戶的指定,以及makefile.in 文件生成makefile
(2) 檢查依賴到的外部環境,如依賴的軟體包
2。make(項目編輯器):
根據makefile 文件,構建應用程式
為了加快編譯速度,可以採用這條命令make -j 4 && make install。-j表示可以多進程,多線程的併發編譯。
如果處理器數量為4個,-j最多寫4。
3。make install:
複製文件到相應路徑
開發工具:
同時開發者也可以自己生成 configure。使用autoconf生成configure腳本,使用automake生成Makefile.in。
autoconf:生成configure 腳本
automake:生成Makefile.in
註意:
安裝前查看INSTALL ,README
開源程式源代碼的獲取:
官方自建站點:
apache.org (ASF :Apache Software Foundation)
mariadb.org
...
代碼托管:
SourceForge.net
Github.com
code.google.com
c/c++ 編譯器:
gcc (GNU C Complier)
編譯C源代碼:
準備: 提供開發工具及開發環境
開發工具: make(項目編輯器), gcc等
開發環境: 開發庫,頭文件
glibc : 標準庫
實現: 通過“包組”提供開發組件,Development Tools ,Server Platform Development
第一步:configure 腳本
選項:指定安裝位置、指定啟用的特性
--help: 獲取其支持使用的選項
選項分類:
安裝路徑設定:
--prefix=/PATH: 指定預設安裝位置, 預設為/usr/local/
--sysconfdir=/PATH :配置文件安裝位置
System types: 支持交叉編譯
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|man_db.conf 文件
添加一個MANPATH