程序包編譯安裝:
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