Эта статья поднимает множество проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалить эти сообщения-шаблоны ) ( Узнайте, как и когда удалить этот шаблон сообщения )
|
Разработчики) | Проект GNU [1] |
---|---|
Первый выпуск | 9 июля 1997 г . |
Стабильный выпуск | 2.4.6 (15 февраля 2015 г . [2] ) [±] |
Репозиторий | |
Операционная система | Кроссплатформенность |
Тип | Библиотека |
Лицензия | GPLv2 |
Веб-сайт | gnu.org/s/libtool |
GNU Libtool - это инструмент разработки программного обеспечения , который является частью системы сборки GNU . Это сценарий оболочки .[3] Он был создан для решения проблемы переносимости программного обеспечения при компиляции разделяемых библиотек из исходного кода . Он скрывает различия между вычислительными платформами для команд, которые компилируют разделяемые библиотеки.[4] Он предоставляет интерфейс командной строки , идентичный для разных платформ, и выполняет собственные команды платформы .
Обоснование [ править ]
Разные операционные системы по- разному обрабатывают разделяемые библиотеки . Некоторые платформы вообще не используют разделяемые библиотеки. Сделать программное обеспечение переносимым может быть сложно: компилятор C отличается от системы к системе; некоторые библиотечные функции отсутствуют в некоторых системах; заголовочные файлы могут иметь разные имена. Один из способов справиться с этим - написать условный код с блоками кода, выбранными с помощью директив препроцессора ( #ifdef
); но из-за большого разнообразия сред сборки этот подход быстро становится неуправляемым. Система сборки GNU предназначена для более управляемого решения этой проблемы.
Libtool помогает управлять созданием статических и динамических библиотек в различных Unix-подобных операционных системах. Libtool выполняет это, абстрагируя процесс создания библиотеки, скрывая различия между различными системами (например, системы Linux и Solaris ).
GNU Libtool разработан для упрощения процесса компиляции компьютерной программы в новой системе путем «инкапсуляции как зависимостей платформы, так и пользовательского интерфейса в один сценарий».[5] При переносе программы в новую систему Libtool спроектирован таким образом, что переносчику не нужно читать низкоуровневую документацию по собираемым разделяемым библиотекам, а просто запускать сценарий конфигурации (или эквивалент).[5]
Используйте [ редактировать ]
Libtool используется Autoconf и Automake , двумя другими инструментами переносимости в системе сборки GNU. Его также можно использовать напрямую.[6]
Клоны и производные [ править ]
С тех пор, как был выпущен GNU Libtool, другие проекты бесплатного программного обеспечения создали заменяющие компоненты под другими лицензиями на программное обеспечение . [7]
См. Также [ править ]
- Коллекция компиляторов GNU
- Система сборки GNU
Ссылки [ править ]
- ^ "GNU" . Проверено 25 июня 2012 года . CS1 maint: обескураженный параметр ( ссылка )
- ↑ Гэри В. Воан (15 февраля 2015 г.). «GNU Libtool - Новости: libtool-2.4.6 выпущен [стабильный]» . GNU Libtool - Новости . savannah.gnu.org .
- ^ "Посмертный анализ других реализаций" . Руководство GNU Libtool . Проект GNU. 2015-02-15 . Проверено 2 февраля 2021 . CS1 maint: обескураженный параметр ( ссылка )
- ^ «Введение» . Руководство GNU Libtool . Проект GNU. 2015-02-15 . Проверено 2 февраля 2021 . CS1 maint: обескураженный параметр ( ссылка )
- ^ a b Руководство по Libtool
- ^ "Написание правил Makefile для libtool" . Руководство GNU Libtool . Проект GNU. 2015-02-15 . Проверено 2 февраля 2021 . CS1 maint: обескураженный параметр ( ссылка )
- ^ Библиотека под лицензией BSD .
Внешние ссылки [ править ]
- Официальный веб-сайт
- Домашняя страница Autobook
- Учебное пособие по Autotools
- Избегайте минных полей libtool при кросс-компиляции
- Автоинструменты Mythbuster