README.freebsd - Perl version 5 on FreeBSD systems
This 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 ithreads
When 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 FreeBSD
perl 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
Perl will no longer be part of "base FreeBSD"
Not 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.
Nicholas 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.