Jump to content

glibc

(Перенаправлено из библиотеки GNU C )

Библиотека GNU C
Оригинальный автор(ы) Роланд МакГрат
Разработчик(и) Проект GNU , большая часть вклада Ульриха Дреппера
Первоначальный выпуск 1987 год ; 37 лет назад ( 1987 ) [1]
Стабильная версия
2.40 [2]  Отредактируйте это в Викиданных / 22 июля 2024 г.
Репозиторий
Написано в С
Операционная система Unix-подобный
Тип Библиотека времени выполнения
Лицензия 2001: LGPL-2.1 или новее [а]
1992: LGPL-2.0 или более поздняя версия [б]
Веб-сайт www .gnu .org /программное обеспечение /libc /

Библиотека GNU C , широко известная как glibc , представляет собой в рамках проекта GNU реализацию стандартной библиотеки C . Это оболочка системных вызовов ядра Linux для использования приложениями. Несмотря на свое название, теперь он также напрямую поддерживает C++ (и косвенно другие языки программирования ). Он был начат в 1980-х годах Фондом свободного программного обеспечения (FSF) для операционной системы GNU .

glibc — бесплатное программное обеспечение , распространяемое по лицензии GNU Lesser General Public License . [3] Проект GNU C Library предоставляет основные библиотеки для системы GNU, а также для многих систем, использующих Linux в качестве ядра . Эти библиотеки предоставляют критически важные API, включая ISO C11 , POSIX.1-2008 , BSD , API для конкретных ОС и многое другое. Эти API включают в себя такие основополагающие возможности, как open , read , write , malloc , printf , getaddrinfo , dlopen , pthread_create , crypt , Login , Exit и другие.

Версия Дата Основные моменты
0.1 – 0.6October 1991 – February 1992
1.0February 1992
1.01 – 1.09.3March 1992 – December 1994
1.90 – 1.102May 1996 – January 1997
2.0January 1997
2.0.1January 1997
2.0.2February 1997
2.0.91December 1997
2.0.95July 1998
2.1February 1999
2.1.1March 1999
2.2November 2000
2.2.1January 2001
2.2.2February 2001
2.2.3March 2001
2.2.4July 2001
2.3October 2002
2.3.1October 2002
2.3.2February 2003
2.3.3December 2003
2.3.4December 2004Minimum for Linux Standard Base (LSB) 3.0
2.3.5April 2005
2.3.6November 2005
2.4March 2006Minimum for LSB 4.0, initial inotify support
2.5September 2006Full inotify support. RHEL5 end of support was November 30, 2020; 3 years ago (2020-11-30)
2.6May 2007
2.7October 2007
2.8April 2008
2.9November 2008
2.10May 2009Minimum for LSB 5.0. Initial psiginfo Archived 19 September 2021 at the Wayback Machine support.
2.11October 2009SLES11 reached end of long-term support in March 2022.
2.12May 2010
2.13January 2011
2.14June 2011
2.15March 2012
2.16June 2012x32 ABI support, ISO C11 compliance, SystemTap
2.17December 201264-bit ARM support
2.18August 2013Improved C++11 support. Support for Intel TSX lock elision. Support for the Xilinx MicroBlaze and IBM POWER8 microarchitectures.
2.19February 2014SystemTap probes for malloc. GNU Indirect Function (IFUNC) support for ppc32 and ppc64. New feature test macro _DEFAULT_SOURCE to replace _SVID_SOURCE and _BSD_SOURCE. Preliminary safety documentation for all functions in the manual. ABI change in ucontext and jmp_buf for s390/s390x.
2.20September 2014Support for file description locks
2.21February 2015New semaphore implementation
2.22August 2015Support to enable Google Native Client (NaCl), that originally ran on x86, running on ARMv7-A, Unicode 7.0
2.23February 2016Unicode 8.0
2.24August 2016Some deprecated features have been removed
2.25February 2017The getentropy and getrandom functions, and the <sys/random.h> header file have been added.
2.26August 2017Improved performance (per-thread cache for malloc), Unicode 10 support
2.27February 2018Performance optimizations. RISC-V support.
2.28August 2018statx, renameat2, Unicode 11.0.0
2.29February 2019
  • getcpu wrapper
  • build and install all locales as directories with files
  • optimized trigonomical functions
  • Transactional Lock Elision for powercp64le ABI
  • posix_spawn_file_actions_addchdir_np and posix_spawn_file_actions_addfchdir_np
  • popen and system do not run atfork handlers anymore
  • support for the C-SKY ABIV2 running on Linux
  • strftime's default formatting of a locale's alternative year; the '_' and '-' flags can now be applied to its "%EY"[7]
2.30August 2019Unicode 12.1.0, the dynamic linker accepts the --preload argument to preload shared objects, the gettid function has been added on Linux, Minguo (Republic of China) calendar support, new Japanese era added to ja_JP locale, memory allocation functions fail with total object size larger than PTRDIFF_MAX; CVE-2019-7309 and CVE-2019-9169 fixed[8]
2.31February 2020Initial C23 standard support
2.32August 2020Unicode 13.0, 'access' attribute for better warnings in GCC 10, i.e. to "help detect buffer overflows and other out-of-bounds accesses"[9]
2.33February 2021HWCAPS
2.34August 2021libpthread, libdl, libutil, libanl has been integrated into libc.
2.35February 2022Unicode 14.0, C.UTF-8 locale, restartable sequences. Removed Intel MPX support.
2.36August 2022
2.37February 2023
2.38August 2023The strlcpy and strlcat functions added. libmvec support for ARM64.
2.39January 2024The stdbit.h header has been added from ISO C2X. Support for shadow stacks on x86_64, new security features, and the removal of libcrypt.
2.40July 2024Partial support for the ISO C23 standard, a new tunable for the testing of setuid programs, improved 64-bit ARM vector support.
Ульрих Дреппер в 2007 году, главный автор glibc.
Библиотека GNU C — это оболочка системных вызовов ядра Linux .
Ядро Linux и библиотека GNU C вместе образуют Linux API . После компиляции двоичные файлы предлагают ABI .

Первоначально проект glibc был написан в основном Роландом МакГратом, работавшим в Фонде свободного программного обеспечения (FSF) летом 1987 года, будучи подростком. [10] [11] В феврале 1988 года FSF описал glibc как почти полностью реализовавшую функциональность, требуемую ANSI C. [12] К 1992 году были реализованы функции ANSI C-1989 и POSIX.1-1990, и велась работа над POSIX.2. [13] В сентябре 1995 года Ульрих Дреппер внес свой первый вклад в glibc, и к 1997 году большая часть коммитов была сделана именно им. Дреппер занимал должность сопровождающего в течение многих лет и до 2012 года накопил 63% всех обязательств по проекту. [14]

В мае 2009 года glibc был перенесен в репозиторий Git . [14]

В 2010 году была решена проблема с лицензированием, вызванная тем, что реализация Sun RPC в glibc не была совместима с GPL . Это было исправлено путем повторного лицензирования компонентов Sun RPC под лицензию BSD . [15] [16]

В 2014 году в glibc возникла ошибка поломки ABI на s390. [17]

В июле 2017 года, через 30 лет после запуска glibc, Роланд МакГрат объявил о своем уходе, «объявив себя почетным мейнтейнером и отказавшись от прямого участия в проекте. Эти последние несколько месяцев, если не последние несколько лет, доказали, что вы не нужен мне больше». [10]

В 2018 году сопровождающий Рэймонд Николсон удалил шутку об абортах из исходного кода glibc. Позже он был восстановлен Александром Оливой после того, как Ричард Столлман потребовал вернуть его. [18]

В 2021 году авторских прав требование о передаче Фонду свободного программного обеспечения . из проекта было снято [19]

Вилка и вариант

[ редактировать ]

В 1994 году разработчики ядра Linux создали форк glibc. Их ответвление, «Linux libc», поддерживалось отдельно примерно до 1998 года. Поскольку указание авторских прав было недостаточным, изменения не могли быть включены обратно в GNU Libc. [20] Когда FSF выпустил glibc 2.0 в январе 1997 года, разработчики ядра прекратили выпуск libc Linux из-за превосходного соответствия glibc 2.0 стандартам POSIX. [21] glibc 2.0 также имел лучшую интернационализацию и более глубокий перевод, возможность IPv6 , доступ к 64-битным данным, возможности для многопоточных приложений, совместимость с будущими версиями, а код был более переносимым. [22] Последняя использованная версия Linux libc использовала внутреннее имя ( soname ). libc.so.5 . Вслед за этим glibc 2.x в Linux использует soname libc.so.6 [23] [ нужен лучший источник ]

В 2009 году Debian и ряд его производных перешли с glibc на вариант. [25] eglibc. [26] Eglibc поддерживался консорциумом, состоящим из Freescale , MIPS , MontaVista и Wind River . [27] Он содержал изменения, которые сделали его более подходящим для встроенного использования , и добавил поддержку архитектур, которые не поддерживались glibc, таких как PowerPC e500 . Код eglibc был снова объединен с glibc версии 2.20. [28] С 2014 года поддержка eglibc прекращена. Проект Yocto и Debian также вернулись на glibc после выпуска Debian Jessie . [29]

Руководящий комитет

[ редактировать ]

Начиная с 2001 года за развитием библиотеки следил комитет. [30] с Ульрихом Дреппером [31] остался в качестве ведущего участника и сопровождающего. Создание руководящего комитета вызвало общественную полемику, поскольку Ульрих Дреппер открыто назвал его неудачным враждебного поглощения маневром Ричарда Столлмана . [32] [33] [34] [35]

В марте 2012 года руководящий комитет проголосовал за самороспуск и отстранение Дреппера в пользу процесса разработки, управляемого сообществом, при этом Райан Арнольд, Максим Кувырков, Джозеф Майерс, Карлос О'Донелл и Александр Олива взяли на себя ответственность за поддержку GNU (но никаких дополнительных полномочий по принятию решений). [36] [37] [38]

Функциональность

[ редактировать ]

glibc обеспечивает функциональность, требуемую Единой спецификацией UNIX , POSIX (1c, 1d и 1j), а также некоторые функции, требуемые интерфейсами ISO C11 , ISO C99 , Berkeley Unix (BSD), определением интерфейса System V (SVID) и Руководство по переносимости X/Open (XPG), выпуск 4.2, со всеми расширениями, общими для систем, совместимых с XSI ( X/Open System Interface ), а также со всеми расширениями X/Open UNIX.

Кроме того, glibc также предоставляет расширения, которые были сочтены полезными или необходимыми при разработке GNU .

Поддерживаемое оборудование и ядра

[ редактировать ]

glibc используется в системах, которые используют множество разных ядер и разные аппаратные архитектуры. Чаще всего он используется в системах, использующих ядро ​​Linux на оборудовании x86 , однако официально поддерживаемое оборудование [39] включает в себя: ARM , ARC , C-SKY , DEC Alpha , IA-64 , Motorola m68k , MicroBlaze , MIPS , Nios II , PA-RISC , PowerPC , RISC-V , s390 , SPARC и x86 (старые версии поддерживают TILE ). Он официально поддерживает ядра Hurd и Linux . Кроме того, существуют сильно исправленные версии, работающие на ядрах FreeBSD и NetBSD (из которых построены системы Debian GNU/kFreeBSD и Debian GNU/NetBSD соответственно), а также раздвоенная версия OpenSolaris . [40] Он также используется (в отредактированном виде) и называется libroot.so в BeOS и Haiku . [41]

Использование в небольших устройствах

[ редактировать ]

glibc критиковался как « раздутый В прошлом » и медленный, чем другие библиотеки, например Линус Торвальдс. [42] и программисты встроенного Linux . По этой причине несколько альтернативных стандартных библиотек C было создано , которые занимают меньше места. Однако во многих проектах по созданию небольших устройств GNU libc используется вместо более мелких альтернатив из-за поддержки приложений, соответствия стандартам и полноты. Примеры включают Openmoko. [43] и Familiar Linux для карманных компьютеров iPaq (при использовании программного обеспечения дисплея GPE ). [44]

Безопасные строковые функции

[ редактировать ]

glibc не реализует интерфейсы проверки границ, определенные в C11 , и не реализует strlcpy и strlcat. [45] [46] до 2023 года на том основании, что «на практике эти функции могут вызвать проблемы, поскольку их предполагаемое использование способствует молчаливому усечению данных, увеличивает сложность и неэффективность и не предотвращает переполнение буфера в местах назначения». [47] В FAQ указано, что интерфейсы проверки границ не являются обязательными в стандарте ISO и что snprintf доступен в качестве альтернативы. [47]

Слои совместимости

[ редактировать ]

Существуют уровни совместимости прокладки »), позволяющие программам, написанным для других экосистем, работать на системах, предлагающих интерфейс glibc. К ним относятся libhybris , уровень совместимости для Android Bionic , и Wine , который можно рассматривать как уровень совместимости API Windows с glibc и другими собственными API, доступными в Unix-подобных системах.

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ LGPL-2.1 или более поздняя версия с 6 июля 2001 г., версия 2.2.4. [3] [4]
  2. ^ LGPL-2.0 или более поздняя версия с 1992 по 5 июля 2001 г. Версия 1.04? до 2.2.3. [5] [6]
  1. ^ Корбет, Джонатан (28 марта 2012 г.). «Поворотный момент для GNU libc» . LWN.net. Архивировано из оригинала 23 апреля 2016 года . Проверено 5 апреля 2012 г.
  2. ^ «Библиотека GNU C версии 2.40 теперь доступна» . 22 июля 2024 г. Проверено 23 июля 2024 г.
  3. ^ Jump up to: а б «sourceware.org Git – glibc.git/blob – Makefile» . sourceware.org . Архивировано из оригинала 10 июня 2021 года . Проверено 10 июня 2021 г. LGPL-2.1 или более поздняя версия в заголовках
  4. ^ «sourceware.org Git – glibc.git/commit – обновление до LGPL v.2.1» . исходное программное обеспечение.org . 6 июля 2001 г. Архивировано из оригинала 10 июня 2021 г. Проверено 10 июня 2021 г. LGPL-2.1 или более поздняя версия в заголовках
  5. ^ "glibc-1.04.tar.Z" . 4 сентября 1992 года. Архивировано из оригинала 22 декабря 2021 года . Проверено 22 декабря 2021 г.
  6. ^ «sourceware.org Git – glibc.git/commit – Первоначальный импорт: Makefile» . исходное программное обеспечение.org . 18 февраля 1995 года. Архивировано из оригинала 10 июня 2021 года . Проверено 10 июня 2021 г. LGPL-2.0 или более поздняя версия в заголовках
  7. ^ «sourceware.org Git – glibc.git/blob – НОВОСТИ» . Архивировано из оригинала 21 марта 2022 года . Проверено 26 апреля 2019 г.
  8. ^ «sourceware.org Git – glibc.git/blob – НОВОСТИ» . Архивировано из оригинала 26 сентября 2019 года . Проверено 26 апреля 2019 г.
  9. ^ «Библиотека GNU C версии 2.32 теперь доступна» . исходное программное обеспечение.org . Архивировано из оригинала 28 сентября 2020 года . Проверено 13 августа 2020 г. .
  10. ^ Jump up to: а б «Роланд МакГрат уходит с поста сопровождающего glibc [LWN.net]» . lwn.net . 7 июля 2017 года. Архивировано из оригинала 1 августа 2020 года . Проверено 8 июля 2017 г.
  11. ^ Чиргвин, Ричард (10 июля 2017 г.). «Роланд МакГрат уходит с поста сопровождающего glibc после 30 лет работы» . Регистр . Ситуация Издательство. Архивировано из оригинала 7 марта 2024 года . Проверено 1 июня 2024 г.
  12. ^ «Бюллетень GNU, том 1, № 4, февраль 1988 г.» . Архивировано из оригинала 16 апреля 2016 года . Проверено 16 апреля 2014 г. Большинство библиотек готовы. Роланд МакГрат [...] имеет почти полный набор функций библиотеки ANSI C. Мы надеемся, что они будут готовы этой весной.
  13. ^ «Бюллетень GNU, том 1, № 12» . Архивировано из оригинала 11 марта 2016 года . Проверено 16 апреля 2014 г. Теперь он содержит все функции ANSI C-1989 и POSIX.1-1990, а также ведется работа над функциями POSIX.2 и Unix (BSD и System V).
  14. ^ Jump up to: а б Корбет, Джонатан (28 марта 2012 г.). «Поворотный момент для GNU libc» . LWN.net. Архивировано из оригинала 23 апреля 2016 года . Проверено 5 апреля 2012 г. Из почти 19 000 коммитов, найденных в git-репозитории проекта (который содержит изменения, начиная с 1995 года), более 12 000 были сделаны Ульрихом.
  15. ^ «Glibc наконец-то стало свободным программным обеспечением – The H Open: новости и возможности» . Х-онлайн . Архивировано из оригинала 21 марта 2022 года . Проверено 19 сентября 2021 г.
  16. ^ Фиппс, Саймон (2 сентября 2010 г.). «Gnu/Linux: Наконец-то это действительно свободное программное обеспечение» . Инфомир . Архивировано из оригинала 28 октября 2021 года . Проверено 19 сентября 2021 г.
  17. ^ Корбет, Джонатан. «Взлом ABI glibc s390 [LWN.net]» . LWN.net . Архивировано из оригинала 17 марта 2022 года . Проверено 17 марта 2022 г.
  18. ^ Клэберн, Томас. «Разница в шутке Glibc об абортах приводит Ричарда Столлмана в негодование» . Регистр . Архивировано из оригинала 17 января 2023 года . Проверено 17 января 2023 г.
  19. ^ Хальфакри, Гарет. «Проекты с открытым исходным кодом glibc и gnulib стремятся разорвать связи с авторским правом с Фондом свободного программного обеспечения» . Регистр . Архивировано из оригинала 17 января 2023 года . Проверено 17 января 2023 г.
  20. ^ «История glibc и Linux libc» . Журнал свободного программного обеспечения . Архивировано из оригинала 26 сентября 2021 года . Проверено 10 мая 2021 г.
  21. ^ «Раздвоение: это может случиться даже с вами» . 24 октября 2000 г. Архивировано из оригинала 15 сентября 2009 г. Раскол между GNU LIBC и Linux LIBC - он продолжался годами, пока Linux стабилизировался, а затем ответвления снова объединились в один проект.
  22. ^ Ли, Эллиот (9 июля 1998 г.). «Техническое сравнение glibc 2.x с устаревшими системными библиотеками» . Архивировано из оригинала 11 апреля 2004 года.
  23. ^ Моен, Рик (20 мая 2021 г.) [14 ноября 1999 г.]. Эссе «Страх перед разветвлением» . linuxmafia.com . 6. glibc --> Linux libc --> glibc. Архивировано из оригинала 27 ноября 2023 года.
  24. ^ «EGLIBC: Часто задаваемые вопросы» . eglibc.org . Архивировано из оригинала 17 марта 2012 года . Проверено 16 сентября 2021 г.
  25. ^ Разработчики eglibc подчеркнули, что eglibc — это не форк glibc, а вариант, принимающий патчи из вышестоящего проекта glibc. [24]
  26. ^ Вадува, Александру (2016). Linux: разработка встраиваемых систем: используйте возможности Linux для разработки увлекательных и мощных проектов встраиваемых систем Linux: курс из трех модулей . Алекс Гонсалес, Крис Симмондс. Бирмингем, Великобритания: Packt Publishing. п. 24. ISBN  978-1-78712-445-5 . OCLC   960471438 .
  27. ^ Штиберт, Юлиус (6 мая 2009 г.). «Debian переключается на Eglibc» . golem.de . Архивировано из оригинала 16 сентября 2021 года . Проверено 16 сентября 2021 г.
  28. ^ Симмондс, Крис (2017). Освоение программирования для встроенного Linux: раскрыть весь потенциал встроенного Linux (2-е изд.). Бирмингем, Великобритания. п. 26. ISBN  978-1-78728-885-0 . OCLC   995052708 . {{cite book}}: CS1 maint: отсутствует местоположение издателя ( ссылка )
  29. ^ Вадува, Александру (2015). Изучение встроенного Linux с помощью проекта Yocto: разрабатывайте мощные встроенные системы Linux с помощью компонентов проекта Yocto . Бирмингем, Великобритания. п. 29. ISBN  978-1-78439-519-3 . OCLC   914797028 . {{cite book}}: CS1 maint: отсутствует местоположение издателя ( ссылка )
  30. ^ "домашняя страница glibc" . Архивировано из оригинала 22 апреля 2016 года . Проверено 16 апреля 2014 г. В 2001 году был сформирован Руководящий комитет библиотеки GNU C..., в который в настоящее время входят Марк Браун, Пол Эггерт, Андреас Йегер, Якуб Елинек, Роланд МакГрат и Андреас Шваб.
  31. ^ «Ульрих Дреппер» . LinkedIn. Архивировано из оригинала 10 сентября 2014 года . Проверено 13 июня 2012 г.
  32. ^ онлайн, Хейсе (19 августа 2001 г.). «Разработчик открытого исходного кода критикует Столлмана» . heise онлайн (на немецком языке). Архивировано из оригинала 16 сентября 2021 года . Проверено 16 сентября 2021 г.
  33. ^ Дреппер, Ульрих (26 июня 2000 г.). «RMS снова в деле» . исходное программное обеспечение.org. Архивировано из оригинала 28 декабря 2012 года . Проверено 20 ноября 2015 г. Несколько недель назад RMS начала очередную атаку на меня (одно письмо, за которым последовали косвенные попытки оказать влияние, а сегодня последовало еще одно письмо). Суть в том, что он жалуется, что я не следую «политике GNU», и поэтому меня должен заменить руководящий комитет, частью которого я мог бы быть. Некоторые из вас (а именно Роланд и Андреас С.), вероятно, знают об этом, поскольку он предложил обоих в качестве других членов комитета. Кроме того, в списке значился Марк Браун (я знаю человека с таким именем в IBM, который тоже мог бы вписаться в эту группу, но я не уверен, действительно ли это он). В любом случае, я это полностью отвергаю. Это совсем не помогает, наоборот. Во-первых, мне не известно о каких-либо существенных правилах, которые я нарушаю. Единственные из них заключаются в том, что я не выполняю приказы RMS, которые явно имеют политические намерения (что, конечно, является кощунством) и, возможно, меня не волнует Винблоуз (если последнее вообще имеет значение). Ничего из этого никак не изменится.
  34. ^ Дреппер, Ульрих (15 августа 2001 г.). "glibc 2.2.4" . исходное ПО.com. Архивировано из оригинала 9 апреля 2016 года . Проверено 29 ноября 2015 г. А теперь о не очень приятных вещах. Столлман недавно предпринял то, что я бы назвал враждебным поглощением разработки glibc. Он пытался сговориться за моей спиной и убедить других основных разработчиков взять на себя управление, чтобы в конце концов он получил контроль и мог диктовать все, что ему заблагорассудится. Эта попытка провалилась, но он продолжал оказывать давление на людей повсюду, и это стало действительно ужасным. В конце концов я согласился на создание так называемого «руководящего комитета» (РК).
  35. rms-acused-of-attempting-glibc-hostile-takeover. Архивировано 1 августа 2020 г. на Wayback Machine на slashdot.com 19 августа 2001 г.
  36. ^ «Руководящий комитет библиотеки GNU C распускается – The H Open: новости и возможности» . Х-Онлайн . Архивировано из оригинала 21 марта 2023 года . Проверено 16 марта 2023 г.
  37. ^ МакГрат, Роланд (26 марта 2012 г.). «роспуск руководящего комитета glibc» . Исходное программное обеспечение.org. Архивировано из оригинала 26 сентября 2019 года . Проверено 13 июня 2012 г.
  38. ^ Майерс, Джозеф С. (26 марта 2012 г.). «Разработка и сопровождение библиотеки GNU C» . Исходное программное обеспечение.org. Архивировано из оригинала 26 сентября 2019 года . Проверено 13 июня 2012 г.
  39. ^ «Сопровождающие машины библиотеки GNU C» . Архивировано из оригинала 18 апреля 2016 года . Проверено 8 октября 2015 г.
  40. ^ Бартли, Дэвид; Спанг, Майкл. «GNU/kOpenSolaris (GNU libc/base + ядро ​​OpenSolaris)» . Архивировано из оригинала 6 ноября 2019 года . Проверено 16 декабря 2008 г.
  41. ^ «Источник Хайку» . Гитхаб . Архивировано из оригинала 1 мая 2016 года . Проверено 15 октября 2014 г. libroot.so не является частью проекта GNU и включен в исходный код Haiku.
  42. ^ Торвальдс, Линус (9 января 2002 г.). «Публикация в списке рассылки glibc» . Архивировано из оригинала 12 октября 2015 года . Проверено 22 июля 2007 г.
  43. ^ «Компоненты OpenMoko» . Архивировано из оригинала 22 апреля 2016 года . Проверено 13 мая 2008 г. Мы будем использовать glibc (не uClibC)... Альтернативы могут сэкономить больше места и быть более оптимизированными, но с большей вероятностью доставят нам головную боль при интеграции.
  44. ^ "Re: [Знакомый] Какой glibc для Familiar 0.8.4?" . Архивировано из оригинала 12 марта 2022 года . Проверено 26 ноября 2018 г. Вопрос: какая версия GLIBC использовалась для сборки Familiar 0.8.4? Ответ: 2.3.3
  45. ^ Керриск, Майкл. «Взлёты и падения strlcpy()» . LWN.net . Архивировано из оригинала 9 декабря 2023 года . Проверено 9 декабря 2023 г.
  46. ^ Корбет, Джонатан. «Добавление strlcpy() в glibc» . LWN.net . Архивировано из оригинала 9 декабря 2023 года . Проверено 9 декабря 2023 г.
  47. ^ Jump up to: а б "ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ" . исходное программное обеспечение.org . Архивировано из оригинала 9 декабря 2023 года . Проверено 9 декабря 2023 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 904307dab233db58af4a948ad4185b72__1721733900
URL1:https://arc.ask3.ru/arc/aa/90/72/904307dab233db58af4a948ad4185b72.html
Заголовок, (Title) документа по адресу, URL1:
glibc - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)