Libtool
外觀
開發者 | GNU計劃 |
---|---|
目前版本 | |
原始碼庫 | |
作業系統 | 跨平台 |
類型 | 函式庫 |
授權條款 | GPLv2 |
網站 | https://www.gnu.org/software/libtool/ |
在電腦編程中,GNU Libtool是一個軟體開發工具,它是GNU構建系統的一部份,由一個shell指令碼組成[3],建立它是致力於解決從原始碼編譯共享庫時的軟體可移植性問題。它隱藏了編譯共享庫的命令在計算平台之間的不同[4]。它提供了跨平台同一的一個命令列介面並且它執行這個平台的本地命令。
原理
[編輯]不同的作業系統以不同方式處理共享庫。有些平台根本就不使用共享庫。這使得難以讓軟體程式可移植:C編譯器隨系統不同而不同,特定庫函式在某些系統上缺失,標頭檔可能有不同的名字。
Libtool幫助管理在各種類Unix作業系統上的靜態和動態庫的建立。Libtool通過抽象庫的建立過程、隱藏在各種系統之間的區別來完成它。
GNU Libtool通過「封裝特定於平台的依賴和使用者介面二者在一個單一指令碼中」,在設計上簡化了在新系統上編譯電腦程式的過程[5]。在移植一個程式到一個新系統之時,Libtool在設計上能讓移植者不需要閱讀所要建造的共享庫的底層文件,而只是執行一個「組態」指令碼(或等價者)[5]。
使用
[編輯]Libtool是經由Autoconf和Automake來使用的,它們是GNU構建系統中另外兩個可移植性工具。它也可以直接使用[6]。
克隆和衍生
[編輯]自從GNU Libtool發行後,其他自由軟體專案已經嘗試在不同軟體授權條款下創立它的直截了當替代者[7],比如slibtool[8]就是這種實現[9]。
參見
[編輯]參照
[編輯]- ^ libtool-2.5.0 released [alpha].
- ^ libtool-2.5.4 released [stable]. 2024年11月20日 [2024年11月20日].
- ^ A postmortem analysis of other implementations. The GNU Libtool manual. The GNU project. 2015-02-15 [2021-02-02].
- ^ Introduction. The GNU Libtool manual. The GNU project. 2015-02-15 [2021-02-02].
- ^ 5.0 5.1 Libtool Manual
- ^ Writing Makefile rules for libtool. The GNU Libtool manual. The GNU project. 2015-02-15 [2021-02-02].
- ^ BSD-licensed libtool.
- ^ slibtool
- ^ Slibtool - Gentoo wiki. wiki.gentoo.org. [2024-03-11].
外部連結
[編輯]- GNU Libtool首頁 (頁面存檔備份,存於網際網路檔案館)
- Libtool英文手冊 (頁面存檔備份,存於網際網路檔案館)
- Autobook首頁 (頁面存檔備份,存於網際網路檔案館)
- "Autotools教學 (頁面存檔備份,存於網際網路檔案館)",Alexandre Duret-Lutz著,介紹Autoconf、Automake、Libtool與Gettext
- 使用Libtool建立庫 (頁面存檔備份,存於網際網路檔案館)