{
    "content": [
        {
            "type": "text",
            "text": "# perlirix (man)\n\n## NAME\n\nperlirix - Perl version 5 on Irix systems\n\n## DESCRIPTION\n\nThis document describes various features of Irix that will affect how Perl version 5\n(hereafter just Perl) is compiled and/or runs.\n\n## Sections\n\n- **NAME**\n- **DESCRIPTION** (7 subsections)\n- **AUTHOR**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "perlirix",
        "section": "",
        "mode": "man",
        "summary": "perlirix - Perl version 5 on Irix 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": 3,
                "subsections": [
                    {
                        "name": "Building 32-bit Perl in Irix",
                        "lines": 9
                    },
                    {
                        "name": "Building 64-bit Perl in Irix",
                        "lines": 24
                    },
                    {
                        "name": "About Compiler Versions of Irix",
                        "lines": 6
                    },
                    {
                        "name": "Linker Problems in Irix",
                        "lines": 4
                    },
                    {
                        "name": "Malloc in Irix",
                        "lines": 3
                    },
                    {
                        "name": "Building with threads in Irix",
                        "lines": 17
                    },
                    {
                        "name": "Irix 5.3",
                        "lines": 35
                    }
                ]
            },
            {
                "name": "AUTHOR",
                "lines": 7,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "perlirix - Perl version 5 on Irix systems\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "This document describes various features of Irix that will affect how Perl version 5\n(hereafter just Perl) is compiled and/or runs.\n",
                "subsections": [
                    {
                        "name": "Building 32-bit Perl in Irix",
                        "content": "Use\n\nsh Configure -Dcc='cc -n32'\n\nto compile Perl 32-bit.  Don't bother with -n32 unless you have 7.1 or later compilers (use\ncc -version to check).\n\n(Building 'cc -n32' is the default.)\n"
                    },
                    {
                        "name": "Building 64-bit Perl in Irix",
                        "content": "Use\n\nsh Configure -Dcc='cc -64' -Duse64bitint\n\nThis requires require a 64-bit MIPS CPU (R8000, R10000, ...)\n\nYou can also use\n\nsh Configure -Dcc='cc -64' -Duse64bitall\n\nbut that makes no difference compared with the -Duse64bitint because of the \"cc -64\".\n\nYou can also do\n\nsh Configure -Dcc='cc -n32' -Duse64bitint\n\nto use long longs for the 64-bit integer type, in case you don't have a 64-bit CPU.\n\nIf you are using gcc, just\n\nsh Configure -Dcc=gcc -Duse64bitint\n\nshould be enough, the Configure should automatically probe for the correct 64-bit settings.\n"
                    },
                    {
                        "name": "About Compiler Versions of Irix",
                        "content": "Some Irix cc versions, e.g. 7.3.1.1m (try cc -version) have been known to have issues\n(coredumps) when compiling perl.c.  If you've used -OPT:fastio=ON and this happens, try\nremoving it.  If that fails, or you didn't use that, then try adjusting other optimization\noptions (-LNO, -INLINE, -O3 to -O2, et cetera).  The compiler bug has been reported to SGI.\n(Allen Smith <easmith@beatrice.rutgers.edu>)\n"
                    },
                    {
                        "name": "Linker Problems in Irix",
                        "content": "If you get complaints about solocations then search in the file hints/irix6.sh for\n\"lddflags\" and do the suggested adjustments.  (David Billinghurst\n<David.Billinghurst@riotinto.com.au>)\n"
                    },
                    {
                        "name": "Malloc in Irix",
                        "content": "Do not try to use Perl's malloc, this will lead into very mysterious errors (especially with\n-Duse64bitall).\n"
                    },
                    {
                        "name": "Building with threads in Irix",
                        "content": "Run Configure with -Duseithreads which will configure Perl with the Perl 5.8.0 \"interpreter\nthreads\", see threads.\n\nFor Irix 6.2 with perl threads, you have to have the following patches installed:\n\n1404 Irix 6.2 Posix 1003.1b man pages\n1645 Irix 6.2 & 6.3 POSIX header file updates\n2000 Irix 6.2 Posix 1003.1b support modules\n2254 Pthread library fixes\n2401 6.2 all platform kernel rollup\n\nIMPORTANT: Without patch 2401, a kernel bug in Irix 6.2 will cause your machine to panic and\ncrash when running threaded perl.  Irix 6.3 and later are okay.\n\nThanks to Hannu Napari <Hannu.Napari@hut.fi> for the IRIX\npthreads patches information.\n"
                    },
                    {
                        "name": "Irix 5.3",
                        "content": "While running Configure and when building, you are likely to get quite a few of these\nwarnings:\n\nld:\nThe shared object /usr/lib/libm.so did not resolve any symbols.\nYou may want to remove it from your link line.\n\nIgnore them: in IRIX 5.3 there is no way to quieten ld about this.\n\nDuring compilation you will see this warning from toke.c:\n\nuopt: Warning: Perlyylex: this procedure not optimized because it\nexceeds size threshold; to optimize this procedure, use -Olimit\noption with value >= 4252.\n\nIgnore the warning.\n\nIn IRIX 5.3 and with Perl 5.8.1 (Perl 5.8.0 didn't compile in IRIX 5.3) the following\nfailures are known.\n\nFailed Test                  Stat Wstat Total Fail  Failed  List of Failed\n-----------------------------------------------------------------------\n../ext/List/Util/t/shuffle.t    0   139    ??   ??       %  ??\n../lib/Math/Trig.t            255 65280    29   12  41.38%  24-29\n../lib/sort.t                   0   138   119   72  60.50%  48-119\n56 tests and 474 subtests skipped.\nFailed 3/811 test scripts, 99.63% okay. 78/75813 subtests failed,\n99.90% okay.\n\nThey are suspected to be compiler errors (at least the shuffle.t failure is known from some\nIRIX 6 setups) and math library errors (the Trig.t failure), but since IRIX 5 is long since\nend-of-lifed, further fixes for the IRIX are unlikely.  If you can get gcc for 5.3, you could\ntry that, too, since gcc in IRIX 6 is a known workaround for at least the shuffle.t and\nsort.t failures.\n"
                    }
                ]
            },
            "AUTHOR": {
                "content": "Jarkko Hietaniemi <jhi@iki.fi>\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                                  PERLIRIX(1)",
                "subsections": []
            }
        }
    }
}