perlfreebsd
СОДЕРЖАНИЕ
ИМЯ
perlfreebsd - Perl версия 5 в системах FreeBSD
ОПИСАНИЕ
В данном документе описаны различные особенности FreeBSD, которые повлияют на то, как будет скомпилирована и/или запущена Perl версия 5 (в дальнейшем просто Perl).
Сбросы ядра FreeBSD из readdir_r с ithreads
Когда perl настроен для использования ithreads, он будет использовать вызовы реентерабельных библиотек в приоритете перед нереентерабельными версиями. Существует ошибка в readdir_r функции FreeBSD в версиях 4.5 и более ранних, которая может привести к SEGV при чтении больших каталогов. Доступен патч для FreeBSD libc (см. https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=30631), который был интегрирован в FreeBSD 4.6.
$^X не всегда содержит полный путь в FreeBSD
perl устанавливает $^X, где это возможно, в полный путь, обращаясь к операционной системе. В FreeBSD полный путь интерпретатора perl определяется с помощью sysctl и KERN_PROC_PATHNAME если это поддерживается, иначе, путём чтения символической ссылки /proc/curproc/file. В FreeBSD 7 и более ранних версиях в обоих случаях иногда возвращается некорректное значение (см. https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=35703). В этих случаях perl вернётся к старому поведению, используя значение C's argv[0] для $^X.
АВТОР
Nicholas Clark <nick@ccl4.org>, обобщая знания, предоставленные Slaven Rezic и Tim Bunce.
Пожалуйста, сообщайте о любых ошибках, обновлениях или предложениях по адресу https://github.com/Perl/perl5/issues.
© 1993–2023 Larry Wall and others
Licensed under the GNU General Public License version 1 or later, or the Artistic License.
The Perl logo is a trademark of the Perl Foundation.
https://perldoc.perl.org/5.38.0/perlfreebsd