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創建庫 (頁面存檔備份,存於網際網路檔案館)