linux軟體源碼安裝管理__linux

來源:互聯網
上載者:User

接觸linux往往覺得linux得軟體安裝後非常混亂,都不知道他安裝在哪裡,自己也曾非常彷徨,現在我把自己的經驗寫出來,為大家提供借鑒。

linux c/c++語言開源軟體常使用Makefile管理,它需要configure、make、make install 3步曲來安裝軟體。對xxx.tar.gz源碼包解壓後便可以在檔案夾裡進行這3步曲。

./configure --prefix=/path-to-install

這是很關鍵的一步,它確定軟體的lib bin include等等將要安裝的位置,若不指定,預設安裝在/usr/local/bin,/usr/local/lib,/usr/local/include位置。當安裝了很多軟體後,這些目錄裡面的東西也就變得特別雜了,往往不知道檔案是屬於哪些軟體的。

make

make後c/c++檔案被編譯成.o檔案,即所謂的目標檔案

make install

將目標檔案連結成可執行檔二進位檔案,放到bin中,打包成庫放到lib中,標頭檔放到include中。若prefix指定的路徑在root許可權的目錄中,還需要使用

sudo make install

來執行。至此,源碼包也就沒用了,但可以留著下次再編譯,或以後執行make uninstall命令移除擴充的檔案。

/usr/local/bin,/usr/local/lib,/usr/local/include夾是在系統的PATH,LD_LIBRARY_PATH,C_INCLUDE_PATH,CPLUS_INCLUDE_PATH環境變數裡面的,不用編輯額外配置。
然而,為了更有條理的管理我們自己軟體,我們傾向於將軟體放在我們自己指定的目錄當中。此時我們需要配置環境變數。

bin lib include設定

export PATH=$PATH:/home/solo/tools/zeromq/binexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/solo/tools/zeromq/libexport C_INCLUDE_PATH=$C_INCLUDE_PATH:/home/solo/tools/zeromq/includeexport CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/home/solo/tools/zeromq/include

共用庫管理
1 /etc/ld.so.conf預設管理/lib和/usr/lib,需調用ldconfig命令更新
2 其他路徑lib可加入/etc/ld.so.conf,需調用ldconfig命令更新
3 通過LD_LIBRARY_PATH 作者簡介

唐黎哲,國防科學技術大學並行與分散式運算國家重點實驗室(PDL)研究生,14年入學便開始接觸spark,準備在餘下的讀研時間在spark相關開源社區貢獻自己的代碼,畢業後準備繼續從事該方面研究。
郵箱:tanglizhe1105@qq.com

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.