PERLFREEBSDSection: Perl Programmers Reference Guide (1)
Index Return to Main Contents
NAMEREADME.freebsd - Perl version 5 on FreeBSD systems
DESCRIPTIONThis document describes various features of FreeBSD that will affect how Perl version 5 (hereafter just Perl) is compiled and/or runs.
FreeBSD core dumps from readdir_r with ithreadsWhen perl is configured to use ithreads, it will use re-entrant library calls in preference to non-re-entrant versions. There is a bug in FreeBSD's "readdir_r" function in versions 4.5 and earlier that can cause a SEGV when reading large directories. A patch for FreeBSD libc is available (see http://www.freebsd.org/cgi/query-pr.cgi?pr=misc/30631 ) which has been integrated into FreeBSD 4.6.
$^X doesn't always contain a full path in FreeBSDperl 5.8.0 sets $^X where possible to a full path by asking the operating system. On FreeBSD the full path of the perl interpreter is found by reading the symlink /proc/curproc/file. There is a bug on FreeBSD, where the result of reading this symlink is can be wrong in certain circumstances (see http://www.freebsd.org/cgi/query-pr.cgi?pr=35703 ). In these cases perl will fall back to the old behaviour of using C's argv value for $^X.
Perl will no longer be part of base FreeBSDNot as bad as it sounds---what this means is that Perl will no longer be part of the kernel build system of FreeBSD. Perl will still very probably be part of the ``default install'', and in any case the latest version will be in the ports system. The first FreeBSD version this change will affect is 5.0, all 4.n versions will keep the status quo.
AUTHORNicholas Clark <email@example.com>, collating wisdom supplied by Slaven Rezic and Tim Bunce.
Please report any errors, updates, or suggestions to firstname.lastname@example.org.
- FreeBSD core dumps from readdir_r with ithreads
- $^X doesn't always contain a full path in FreeBSD
- Perl will no longer be part of base FreeBSD