日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

對話 UNIX,第 12 部分: 自己動手完成項目

Unix?系統(tǒng)中提供了數(shù)百個實用工具應(yīng)用程序或者命令 。其中一些命令可以操作文件系統(tǒng),而其他的命令則用于查詢并控制操作系統(tǒng)本身 。大量的命令提供了連接性,并且還有更豐富的命令可用于生成、交換、修改、篩選和分析數(shù)據(jù) 。由于 UNIX 具有悠久而豐富的歷史,所以您也許能夠找到恰好合適的工具,以用于手頭的任務(wù) 。
此外,當(dāng)一個實用工具不能滿足需求時,您可以通過各種各樣的方式結(jié)合任何數(shù)量的 UNIX 實用工具,以創(chuàng)建您自己的工具 。正如您在前面的部分中所看到的,可以利用管道、重定向和條件,直接在命令行中構(gòu)建即時可用的工具,并且 Shell 腳本將小型的、易于學(xué)習(xí)的編程語言的強(qiáng)大功能與 UNIX 命令結(jié)合在一起,以構(gòu)建可重用工具 。
當(dāng)然,在很多情況下,僅依靠命令行和 Shell 腳本是不夠的 。例如,如果您必須部署一個新的守護(hù)進(jìn)程以提供新的網(wǎng)絡(luò)服務(wù),那么您可以使用一種表達(dá)能力更強(qiáng)的語言,如 C 或者 Python,以便自己編寫應(yīng)用程序 。并且,因為 Internet 上有許多應(yīng)用程序是免費(fèi)的(免費(fèi) 意味著無需支付任何費(fèi)用、得到自由條款的許可,或者兩者都有),所以您還可以下載、編譯并安裝適當(dāng)?shù)?、有效的解決方案,以滿足您的需求 。
UNIX(以及 Linux┑男磯喟姹徑繼峁┮恢殖莆芾砥?的特殊工具,用以在系統(tǒng)中添加、刪除和維護(hù)軟件 。包管理器通??梢跃S護(hù)本地安裝的所有軟件的詳細(xì)目錄,以及一個或者多個遠(yuǎn)程存儲庫 中所有可用軟件的目錄 。您可以使用包管理器在存儲庫中搜索您所需要的軟件 。如果存儲庫中包含您正在尋找的軟件,那么您只需要使用一個命令或者點(diǎn)擊幾下鼠標(biāo),就可以在您的系統(tǒng)中安裝一個新的包 。
包管理器是非常有價值的 。使用它,您可以刪除全部的包、更新現(xiàn)有的包,以及為任何包自動地檢測并實現(xiàn)任何先決條件 。例如,如果您選擇了操作圖像的軟件,如可靠的 ImageMagick,但是您的系統(tǒng)中缺少處理 JPEG 圖像的庫,那么包管理器將在安裝您所選擇的包之前檢測并安裝缺少的內(nèi)容 。
然而,也可能存在這樣的情況,即您所需要的軟件是可獲得的,但它卻不包含于任何存儲庫中 。由于包管理方式具有顯著的優(yōu)勢,所以大多數(shù)軟件都提供了可以使用包管理器進(jìn)行下載并安裝的形式 。然而,因為 Unix 的版本和風(fēng)格非常之多,所以很難針對每種特定的變體,以各種包管理器的格式提供每個應(yīng)用程序 。如果您的 UNIX 安裝是主流的,并受到大量擁護(hù)者的喜愛,那么您將更有可能找到預(yù)先構(gòu)建的并且可供使用的軟件 。否則,您就需要挽起袖子準(zhǔn)備自己動手構(gòu)建軟件了 。
是的,年輕的絕地武士(《星球大戰(zhàn)》中的武士),是使用源代碼的時候了 。
如同從沼澤中升起一架 X 翼戰(zhàn)斗機(jī)一樣,從源代碼構(gòu)建軟件乍看起來可能是令人生畏的,特別當(dāng)您不是軟件開發(fā)人員的時候 。事實上,在大多數(shù)情況下,整個構(gòu)建過程僅僅只需要少數(shù)幾條命令,其余的工作都是自動完成的 。
當(dāng)然,某些程序構(gòu)建起來是非常復(fù)雜的(或者需要花費(fèi)數(shù)小時來進(jìn)行構(gòu)建),并且在構(gòu)建過程中需要進(jìn)行人工介入 。然而,即使這些程序通常是由一些容易構(gòu)建的較小的塊構(gòu)造而得到的,依賴關(guān)系的數(shù)量和構(gòu)造的順序也會使構(gòu)建過程變得復(fù)雜 。一些程序還有許多您并不一定希望擁有的特性 。例如,您可以構(gòu)建 PHP,以便與新的網(wǎng)際協(xié)議版本 6 (IPv6) Internet 尋址方案進(jìn)行互操作 。如果您的網(wǎng)絡(luò)尚未采用 IPv6,則不需要包括這個特性 。對大量選項進(jìn)行的審查將使構(gòu)建過程變得更加麻煩 。
這個月,讓我們來研究如何構(gòu)建一個典型的 UNIX 軟件應(yīng)用程序 。在繼續(xù)學(xué)習(xí)后面的內(nèi)容之前,請確保系統(tǒng)中安裝了 C 編譯器,如 GNU 編譯器套裝(GNU Compiler Collection,GCC),以及常見的 UNIX 軟件開發(fā)工具套裝,包括 make、m4、pkg-config 和 awk 。此外,請確保在您的 PATH 環(huán)境變量中包含了所有的開發(fā)工具 。

推薦閱讀