{
    "content": [
        {
            "type": "text",
            "text": "# PERLFREEBSD(1) (man)\n\n**Summary:** perlfreebsd - Perl version 5 on FreeBSD systems\n\n## Section Outline\n\n- **NAME** (2 lines)\n- **DESCRIPTION** (10 lines) — 1 subsections\n  - $^X doesn't always contain a full path in FreeBSD (7 lines)\n- **AUTHOR** (7 lines)\n\n## Full Content\n\n### NAME\n\nperlfreebsd - Perl version 5 on FreeBSD systems\n\n### DESCRIPTION\n\nThis document describes various features of FreeBSD that will affect how Perl version 5\n(hereafter just Perl) is compiled and/or runs.\n\nFreeBSD core dumps from readdirr with ithreads\nWhen perl is configured to use ithreads, it will use re-entrant library calls in preference\nto non-re-entrant versions.  There is a bug in FreeBSD's \"readdirr\" function in versions 4.5\nand earlier that can cause a SEGV when reading large directories. A patch for FreeBSD libc is\navailable (see <http://www.freebsd.org/cgi/query-pr.cgi?pr=misc/30631> ) which has been\nintegrated into FreeBSD 4.6.\n\n#### $^X doesn't always contain a full path in FreeBSD\n\nperl sets $^X where possible to a full path by asking the operating system. On FreeBSD the\nfull path of the perl interpreter is found by using \"sysctl\" with \"KERNPROCPATHNAME\" if\nthat is supported, else by reading the symlink /proc/curproc/file. FreeBSD 7 and earlier has\na bug where either approach sometimes returns an incorrect value (see\n<http://www.freebsd.org/cgi/query-pr.cgi?pr=35703> ).  In these cases perl will fall back to\nthe old behaviour of using C's \"argv[0]\" value for $^X.\n\n### AUTHOR\n\nNicholas Clark <nick@ccl4.org>, collating wisdom supplied by Slaven Rezic and Tim Bunce.\n\nPlease report any errors, updates, or suggestions to <https://github.com/Perl/perl5/issues>.\n\n\n\nperl v5.34.0                                 2025-07-25                               PERLFREEBSD(1)\n\n"
        }
    ],
    "structuredContent": {
        "command": "PERLFREEBSD",
        "section": "1",
        "mode": "man",
        "summary": "perlfreebsd - Perl version 5 on FreeBSD systems",
        "synopsis": null,
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 10,
                "subsections": [
                    {
                        "name": "$^X doesn't always contain a full path in FreeBSD",
                        "lines": 7
                    }
                ]
            },
            {
                "name": "AUTHOR",
                "lines": 7,
                "subsections": []
            }
        ]
    }
}