源码与tarball套件管理程序笔记摘录
1.file命令,用于查看文件的類型,
2.tarball套件解壓后通常會有:源碼文件、檢測程序文件(可能是configure或config等文件名)、本套件的簡要說明與安裝說明。
3.tarball文件一般的擴展名會寫成*.tar.gz或簡寫為*.tgz,以tar先打包,再壓縮而成。
4.gcc –O –Wall
?????? -O產生優化的參數,-Wall為產生更詳細的編譯信息。通常稱-O、-Wall這些非必要的參數為標志FLAGS,因為使用的是GCC,所以也稱為CCFLAGS。
5.#gcc sin.c –lm –L/lib –L/usr/lib
?????? -l 說明加入某個函數庫
m:表示libm.so的函數庫,其中lib與擴展名(.a或.so)不需要寫
-lm:表示使用libm.so或libm.a函數庫
-L后面接的路徑,上述內容表示:
“我要的函數庫libm.so到/lib或/usr/lib中搜索”
6.大部分tarball軟件安裝的命令執行方式:
?????? ./configure 該步驟用于建立Makefile文件
?????? make clean 為了避免前一次保留下來的數據可能影響到這一次編譯的結果,通常執行這一步驟。
?????? make :根據Makefile的默認工作進行編譯。使用make就是要將源碼編譯成為可以執行的可執行文件,而這個可執行文件會放在當前所在的目錄下,尚未安裝到預定安裝的目錄中。
?????? make install:根據Makefile文件中關于install的項目,講上一步所編譯完成的數據安裝到指定的目錄中,從而完成安裝。
7.套件安裝示例ntp.tar.gz:
1)解壓縮,并閱讀ntp下的readme與install
?????? ~]#cd? /usr/local/src
?????? Src]#tar –zxvf? /root/ntp.tar.gz
?????? //該步驟會讓源碼解開成為/usr/local/src/ntp目錄
2)進入源碼所在目錄,并查看安裝技巧
?????? #cd /use/local/src/ntp
?????? #vi INSTALL
3)開始設置參數,編譯與安裝
?????? #./configure –help | more
//上面這個操作可以查看可用的參數
?????? #./configure --prefix=/usr/loccal/ntp –enable-all-clocks –enable-parse-clocks
//其中,--prefix=/path表示這個軟件將安裝到哪個目錄,沒有指定,那么默認就是/usr/local
//這個操作會產生makefile或Makefile文件
//這個檢測過程會顯示在屏幕上,特別注意gcc的檢查
//最重要的是需要成功建立Makefile(最后一行)
4)編譯與安裝
?????? #make clean;make
?????? #make check
?????? #make install
//將數據安裝在/usr/local/ntp下面
?
8.使用patch更新源碼
?????? diff命令用于比較兩個文件的不同,patch file為補丁文件
?????? #diff oldfile newfile
?????? #diff –Naur oldfile newfile > file.patch
patch –p 數字 < patch_file
特別注意-p數字,那是與patch_file中列出的文件名有關的信息.
注意:patch更新源碼,那么可能需要重新編譯,并重新install才算成功更新,因為patch僅僅是更新了源碼文件而已。
9.靜態庫函數,lib***.a;動態庫函數lib***.so.
10. ldconfig與/etc/ld.so.conf
是否將動態函數庫加載到內存中的命令。
轉載于:https://www.cnblogs.com/feney/archive/2009/10/07/1578807.html
總結
以上是生活随笔為你收集整理的源码与tarball套件管理程序笔记摘录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS7新防盗功能:防扒Activati
- 下一篇: ROS防止二理代理