compiling perl 5.8.7 on Solaris 8

Discussion in 'Perl Misc' started by Kirt Loki Dankmyer, Nov 17, 2005.

  1. So, I download the latest "stable" tar for perl (5.8.7) and try to compile
    it on the Solaris 8 (SPARC) box that I administrate. I try all sorts of
    different switches, but I can't get it to compile. I need it to be
    compiled with threads.

    Anyone have any wisdom on how best to do this?

    Here's a transcript of my latest attempt. It's long; you might want to
    skip to the bottom, where I try "make" and the fatal errors start
    happening.

    Script started on Thu Nov 17 15:03:14 2005
    sh-2.03# rm -f config.sh Policy.sh
    sh-2.03# sh Configure

    Beginning of configuration questions for perl5.

    Checking echo to see how to suppress newlines...
    ....using \c
    The star should be here-->*

    First let's make sure your kit is complete. Checking...
    Looks good...


    Would you like to see the instructions? [n]

    Locating common programs...
    awk is in /usr/bin/awk.
    cat is in /usr/bin/cat.
    chmod is in /usr/bin/chmod.
    comm is in /usr/bin/comm.
    cp is in /usr/bin/cp.
    echo is in /usr/bin/echo.
    expr is in /usr/bin/expr.
    grep is in /usr/bin/grep.
    ls is in /usr/bin/ls.
    mkdir is in /usr/bin/mkdir.
    rm is in /usr/bin/rm.
    sed is in /usr/bin/sed.
    sort is in /usr/bin/sort.
    touch is in /usr/bin/touch.
    tr is in /usr/bin/tr.
    uniq is in /usr/bin/uniq.

    Don't worry if any of the following aren't found...
    I don't see Mcc out there, offhand.
    ar is in /usr/bin/ar.
    I don't see bison out there, either.
    I don't see byacc out there, either.
    cpp is in /usr/local/bin/cpp.
    csh is in /usr/bin/csh.
    date is in /usr/bin/date.
    egrep is in /usr/bin/egrep.
    I don't see gmake out there, either.
    gzip is in /usr/bin/gzip.
    less is in /usr/bin/less.
    ln is in /usr/bin/ln.
    make is in /usr/bin/make.
    more is in /usr/bin/more.
    nm is in /usr/bin/nm.
    nroff is in /usr/bin/nroff.
    pg is in /usr/bin/pg.
    test is in /usr/bin/test.
    uname is in /usr/bin/uname.
    zip is in /usr/bin/zip.
    Using the test built into your sh.

    Checking compatibility between /usr/bin/echo and builtin echo (if any)...
    They are compatible. In fact, they may be identical.

    Symbolic links are supported.

    Checking how to test for symbolic links...
    You can test for symbolic links with 'test -h'.


    Good, your tr supports [:lower:] and [:upper:] to convert case.
    Using [:upper:] and [:lower:] to convert case.

    First time through, eh? I have some defaults handy for some systems
    that need some extra help getting the Configure answers right:

    3b1 dos_djgpp irix_6_0 nonstopux sunos_4_0
    aix dynix irix_6_1 openbsd sunos_4_1
    aix_3 dynixptx isc opus super-ux
    aix_4 epix isc_2 os2 svr4
    altos486 esix4 linux os390 svr5
    amigaos fps lynxos os400 ti1500
    apollo freebsd machten posix-bc titanos
    atheos genix machten_2 powerux ultrix_4
    aux_3 gnu mint qnx umips
    beos gnukfreebsd mips rhapsody unicos
    bsdos gnuknetbsd mpc sco unicosmk
    convexos greenhills mpeix sco_2_3_0
    unisysdynix
    cxux hpux ncr_tower sco_2_3_1 utekv
    cygwin i386 netbsd sco_2_3_2 uts
    darwin interix newsos4 sco_2_3_3 uwin
    dcosx irix_4 next_3 sco_2_3_4 vmesa
    dec_osf irix_5 next_3_0 solaris_2 vos
    dgux irix_6 next_4 stellar

    You may give one or more space-separated answers, or "none" if
    appropriate.
    A well-behaved OS will have no hints, so answering "none" or just "Policy"
    is a good thing. DO NOT give a wrong version or a wrong OS.

    Which of these apply, if any? [solaris_2]

    NOTE: Some people have reported problems with /usr/ucb/cc.
    If you have difficulties, please make sure the directory
    containing your C compiler is before /usr/ucb in your PATH.


    Configure uses the operating system name and version to set some defaults.
    The default value is probably right if the name rings a bell. Otherwise,
    since spelling matters for me, either accept the default or answer "none"
    to leave it blank.

    Operating system name? [solaris]

    Operating system version? [2.8]

    Perl can be built to use the SOCKS proxy protocol library. To do so,
    Configure must be run with -Dusesocks. If you use SOCKS you also need
    to use the PerlIO abstraction layer, this will be implicitly selected.

    If this doesn't make any sense to you, just accept the default 'n'.
    Build Perl for SOCKS? [n]

    Previous version of perl5 used the standard IO mechanisms as
    defined in <stdio.h>. Versions 5.003_02 and later of perl5 allow
    alternate IO mechanisms via the PerlIO abstraction layer, but the
    stdio mechanism is still available if needed. The abstraction layer
    can use AT&T's sfio (if you already have sfio installed) or regular stdio.
    Using PerlIO with sfio may cause problems with some extension modules.

    If this doesn't make any sense to you, just accept the default 'y'.
    Use the PerlIO abstraction layer? [y]

    Perl can be built to take advantage of threads on some systems.
    To do so, Configure can be run with -Dusethreads.

    Note that Perl built with threading support runs slightly slower
    and uses more memory than plain Perl. The current implementation
    is believed to be stable, but it is fairly new, and so should be
    treated with caution.

    If this doesn't make any sense to you, just accept the default 'n'.
    Build a threading Perl? [n] y

    Since release 5.6, Perl has had two different threading implementations,
    the newer interpreter-based version (ithreads) with one interpreter per
    thread, and the older 5.005 version (5005threads).
    The 5005threads version is effectively unmaintained and will probably be
    removed in Perl 5.10, so there should be no need to build a Perl using it
    unless needed for backwards compatibility with some existing 5.005threads
    code.

    Use the newer interpreter-based ithreads? [y]
    Your platform has some specific hints regarding threaded builds, using
    them...

    Perl can be built so that multiple Perl interpreters can coexist
    within the same Perl executable.
    This multiple interpreter support is required for interpreter-based
    threads.

    Hmm... Looks kind of like a USG system with BSD features, but we'll
    see...

    Congratulations. You aren't running Eunice.

    It's not Xenix...

    Nor is it Venix...
    Use which C compiler? [cc]
    /usr/ucb/cc: language optional software package not installed
    Uh-oh, the C compiler 'cc' doesn't seem to be working.

    You seem to have a working gcc, though.
    Would you like to use it? [y]

    *** However, any setting of the C compiler flags (e.g. for thread support)
    *** has been lost. It may be necessary to pass -Dcc=gcc to Configure
    *** (together with e.g. -Dusethreads).


    NOTE: You are using GNU as(1). GNU as(1) might not build Perl. If you
    have trouble, you can use /usr/ccs/bin/as by including -B/usr/ccs/bin/
    in your gcc command. (Note that the trailing "/" is required.)

    Found GNU ld='/usr/local/sparc-sun-solaris2.8/bin/ld'

    NOTE: You are using GNU ld(1). GNU ld(1) might not build Perl. If you
    have trouble, you can use /usr/ccs/bin/ld by including -B/usr/ccs/bin/
    in your gcc command. (Note that the trailing "/" is required.)

    I will try to use GNU ld by passing in the -Wl,-E flag, but if that
    doesn't work, you should use -B/usr/ccs/bin/ instead.


    Checking for GNU cc in disguise and/or its version number...
    You are using GNU cc 2.95.3 20010315 (release).

    Hmm... Doesn't look like a MIPS system.

    Now, how can we feed standard input to your C preprocessor...
    Maybe "gcc -E" will work...
    Nope...maybe "gcc -E -" will work...
    Yup, it does.

    Some systems have incompatible or broken versions of libraries. Among
    the directories listed in the question below, please remove any you
    know not to be holding relevant libraries, and add any that are needed.
    Say "none" for none.

    Directories to use for library searches?
    [/usr/local/lib /usr/lib /usr/ccs/lib]

    On some systems, shared libraries may be available. Answer 'none' if
    you want to suppress searching of shared libraries for the remainder
    of this configuration.

    What is the file extension used for shared libraries? [so]

    Perl can be built to take advantage of long doubles which
    (if available) may give more accuracy and range for floating point
    numbers.

    If this doesn't make any sense to you, just accept the default 'n'.
    Try to use long doubles if available? [n]
    Your platform has some specific hints regarding long doubles, using
    them...

    Checking for optional libraries...
    No -lsfio.
    Found -lsocket (shared).
    No -lbind.
    No -linet.
    Found -lnsl (shared).
    No -lnm.
    No -lndbm.
    Found -lgdbm (shared).
    No -ldbm.
    No -ldb.
    Found -ldl (shared).
    No -ldld.
    No -lsun.
    Found -lm (shared).
    No -lutil.
    Found -lpthread (shared).
    Found -lc (shared).
    No -lcposix.
    No -lposix.
    No -lbsd.
    No -lBSD.

    In order to compile perl5 on your machine, a number of libraries
    are usually needed. Include any other special libraries here as well.
    Say "none" for none. The default list is almost always right.

    What libraries to use? [-lsocket -lnsl -lgdbm -ldl -lm -lpthread -lc]
    -lsocket -lnsl -ldl -lm -lpthread -lc]

    By default, perl5 compiles with the -O flag to use the optimizer.
    Alternately, you might want to use the symbolic debugger, which uses
    the -g flag (on traditional Unix systems). Either flag can be
    specified here. To use neither flag, specify the word "none".

    What optimizer/debugger flag should be used? [-O]

    Checking if your compiler accepts -fno-strict-aliasing
    Yes, it does.

    Checking if your compiler accepts -pipe
    Yes, it does.

    Your C compiler may want other flags. For this question you should
    include
    -I/whatever and -DWHATEVER flags and any other flags used by the C
    compiler,
    but you should NOT include libraries or ld flags like -lwhatever. If you
    want perl5 to honor its debug switch, you should include -DDEBUGGING here.
    Your C compiler might also need additional flags, such as -D_POSIX_SOURCE.

    To use no flags, specify the word "none".

    Any additional cc flags? [-fno-strict-aliasing -pipe -I/usr/local/include]

    Let me guess what the preprocessor flags are...
    They appear to be: -fno-strict-aliasing -pipe -I/usr/local/include

    Your C linker may need flags. For this question you should
    include -L/whatever and any other flags used by the C linker, but you
    should NOT include libraries like -lwhatever.

    Make sure you include the appropriate -L/path flags if your C linker
    does not normally search all of the directories you specified above,
    namely
    /usr/local/lib /usr/lib /usr/ccs/lib
    To use no flags, specify the word "none".

    Any additional ld flags (NOT including libraries)? [ -L/usr/local/lib]

    Checking your choice of C compiler and flags for coherency...
    OK, that should do.

    Computing filename position in cpp output for #include directives...
    Your cpp writes the filename in the third field of the line.

    <stdlib.h> found.

    Checking to see how big your integers are...
    Your integers are 4 bytes long.
    Your long integers are 4 bytes long.
    Your short integers are 2 bytes long.

    Checking to see if you have long long...
    You have long long.

    Checking to see how big your long longs are...
    Your long longs are 8 bytes long.

    <inttypes.h> found.

    Checking to see if you have int64_t...
    You have int64_t.

    Checking which 64-bit integer type we could use...
    We could use 'long long' for 64-bit integers.

    Perl can be built to take advantage of 64-bit integer types
    on some systems. To do so, Configure can be run with -Duse64bitint.
    Choosing this option will most probably introduce binary
    incompatibilities.

    If this doesn't make any sense to you, just accept the default 'n'.
    (The default has been chosen based on your configuration.)
    Try to use 64-bit integers, if available? [n]

    You may also choose to try maximal 64-bitness. It means using as much
    64-bitness as possible on the platform. This in turn means even more
    binary incompatibilities. On the other hand, your platform may not
    have any more 64-bitness available than what you already have chosen.

    If this doesn't make any sense to you, just accept the default 'n'.
    (The default has been chosen based on your configuration.)
    Try to use maximal 64-bit support, if available? [n]
    Your platform has some specific hints regarding 64-bit integers, using
    them...
    Your platform has some specific hints regarding 64-bit builds, using
    them...

    Checking to see how big your double precision numbers are...
    Your double is 8 bytes long.

    Checking to see if you have long double...
    You have long double.

    Checking to see how big your long doubles are...
    Your long doubles are 16 bytes long.

    What is your architecture name [sun4-solaris]
    Threads selected.
    ....setting architecture name to sun4-solaris-thread.
    Multiplicity selected.
    ....setting architecture name to sun4-solaris-thread-multi.
    Perlio selected.

    By default, perl5 will be installed in /usr/local/bin, manual pages
    under /usr/local/man, etc..., i.e. with /usr/local as prefix for all
    installation directories. Typically this is something like /usr/local.
    If you wish to have binaries under /usr/bin but other parts of the
    installation under /usr/local, that's ok: you will be prompted
    separately for each of the installation directories, the prefix being
    only used to set the defaults.

    Installation prefix to use? (~name ok) [/usr/local]

    AFS does not seem to be running...

    In some special cases, particularly when building perl5 for distribution,
    it is convenient to distinguish the directory in which files should be
    installed from the directory (/usr/local) in which they will
    eventually reside. For most users, these two directories are the same.

    What installation prefix should I use for installing files? (~name ok)
    [/usr/local]

    Getting the current patchlevel...
    (You have perl5 version 8 subversion 7.)

    There are some auxiliary files for perl5 that need to be put into a
    private library directory that is accessible by everyone.

    Pathname where the private library files will reside? (~name ok)
    [/usr/local/lib/perl5/5.8.7]

    Perl5 contains architecture-dependent library files. If you are
    sharing libraries in a heterogeneous environment, you might store
    these files in a separate location. Otherwise, you can just include
    them with the rest of the public library files.

    Where do you want to put the public architecture-dependent libraries?
    (~name ok)
    [/usr/local/lib/perl5/5.8.7/sun4-solaris-thread-multi]

    Some kernels have a bug that prevents setuid #! scripts from being
    secure. Some sites have disabled setuid #! scripts because of this.

    First let's decide if your kernel supports secure setuid #! scripts.
    (If setuid #! scripts would be secure but have been disabled anyway,
    don't say that they are secure if asked.)

    Congratulations, your kernel has secure setuid scripts!

    No need to emulate SUID scripts since they are secure here.

    <malloc.h> found.

    Checking to see how well your C compiler groks the void type...
    Good. It appears to support void to the level perl5 wants.

    Checking to see how big your pointers are...
    Your pointers are 4 bytes long.

    Do you wish to wrap malloc calls to protect against potential overflows?
    [y]

    Do you wish to attempt to use the malloc that comes with perl5? [n]

    Your system wants malloc to return 'void *', it would seem.
    Your system uses void free(), it would seem.

    After perl5 is installed, you may wish to install various
    add-on modules and utilities. Typically, these add-ons will
    be installed under /usr/local with the rest
    of this package. However, you may wish to install such add-ons
    elsewhere under a different prefix.

    If you do not wish to put everything under a single prefix, that's
    ok. You will be prompted for the individual locations; this siteprefix
    is only used to suggest the defaults.

    The default should be fine for most people.

    Installation prefix to use for add-on modules and utilities? (~name ok)
    [/usr/local]

    The installation process will create a directory for
    site-specific extensions and modules. Most users find it convenient
    to place all site-specific files in this directory rather than in the
    main distribution directory.

    Pathname for the site-specific library files? (~name ok)
    [/usr/local/lib/perl5/site_perl/5.8.7]

    The installation process will also create a directory for
    architecture-dependent site-specific extensions and modules.

    Pathname for the site-specific architecture-dependent library files?
    (~name ok)
    [/usr/local/lib/perl5/site_perl/5.8.7/sun4-solaris-thread-multi]

    The installation process will also create a directory for
    vendor-supplied add-ons. Vendors who supply perl with their system
    may find it convenient to place all vendor-supplied files in this
    directory rather than in the main distribution directory. This will
    ease upgrades between binary-compatible maintenance versions of perl.

    Of course you may also use these directories in whatever way you see
    fit. For example, you might use them to access modules shared over a
    company-wide network.

    The default answer should be fine for most people.
    This causes further questions about vendor add-ons to be skipped
    and no vendor-specific directories will be configured for perl.

    Do you want to configure vendor-specific add-on directories? [n]

    Lastly, you can have perl look in other directories for extensions and
    modules in addition to those already specified.
    These directories will be searched after
    /usr/local/lib/perl5/site_perl/5.8.7/sun4-solaris-thread-multi
    /usr/local/lib/perl5/site_perl/5.8.7

    Enter a colon-separated set of extra paths to include in perl's @INC
    search path, or enter 'none' for no extra paths.

    Colon-separated list of additional directories for perl to search? [none]

    Checking out function prototypes...
    Your C compiler appears to support function prototypes.

    Pathname where the public executables will reside? (~name ok)
    [/usr/local/bin]

    Perl can be built with extra modules or bundles of modules which
    will be fetched from the CPAN and installed alongside Perl.

    Notice that you will need access to the CPAN; either via the Internet,
    or a local copy, for example a CD-ROM or a local CPAN mirror. (You will
    be asked later to configure the CPAN.pm module which will in turn do
    the installation of the rest of the extra modules or bundles.)

    Notice also that if the modules require any external software such as
    libraries and headers (the libz library and the zlib.h header for the
    Compress::Zlib module, for example) you MUST have any such software
    already installed, this configuration process will NOT install such
    things for you.

    If this doesn't make any sense to you, just accept the default 'n'.
    Install any extra modules (y or n)? [n]


    If you wish to install html files for programs in Perl5, indicate
    the appropriate directory here. To skip installing html files,
    answer "none".
    Directory for the main Perl5 html pages? (~name ok) [none]

    If you wish to install html files for modules associated with Perl5,
    indicate the appropriate directory here. To skip installing html files,
    answer "none".
    Directory for the Perl5 module html pages? (~name ok) [none]
    Looking for a previously installed perl5.005 or later...
    Using /usr/bin/perl.

    In order to ease the process of upgrading, this version of perl
    can be configured to use modules built and installed with earlier
    versions of perl that were installed under /usr/local. Specify here
    the list of earlier versions that this version of perl should check.
    If Configure detected no earlier versions of perl installed under
    /usr/local, then the list will be empty. Answer 'none' to tell perl
    to not search earlier versions.

    The default should almost always be sensible, so if you're not sure,
    just accept the default.
    List of earlier versions to include in @INC? [5.8.5]

    Many scripts expect perl to be installed as /usr/bin/perl.

    If you want to, I can install the perl you are about to compile
    as /usr/bin/perl (in addition to /usr/local/bin/perl).

    However, please note that because you already have a /usr/bin/perl,
    overwriting that with a new Perl would very probably cause problems.
    Therefore I'm assuming you don't want to do that (unless you insist).

    Do you want to install perl as /usr/bin/perl? [n]

    Checking for GNU C Library...
    You are not using the GNU C Library

    I can use /usr/bin/nm to extract the symbols from your C libraries. This
    is a time consuming task which may generate huge output on the disk (up
    to 3 megabytes) but that should make the symbols extraction faster. The
    alternative is to skip the 'nm' extraction part and to compile a small
    test program instead to determine whether each symbol is present. If
    you have a fast C compiler and/or if your 'nm' output cannot be parsed,
    this may be the best solution.

    You probably shouldn't let me use 'nm' if you are using the GNU C Library.

    Shall I use /usr/bin/nm to extract C symbols from the libraries? [y] n

    <dld.h> NOT found.

    dlopen() found.

    Do you wish to use dynamic loading? [y]
    The following dynamic loading files are available:
    ext/DynaLoader/dl_aix.xs ext/DynaLoader/dl_mac.xs
    ext/DynaLoader/dl_beos.xs ext/DynaLoader/dl_mpeix.xs
    ext/DynaLoader/dl_dld.xs ext/DynaLoader/dl_next.xs
    ext/DynaLoader/dl_dllload.xs ext/DynaLoader/dl_none.xs
    ext/DynaLoader/dl_dlopen.xs ext/DynaLoader/dl_vmesa.xs
    ext/DynaLoader/dl_dyld.xs ext/DynaLoader/dl_vms.xs
    ext/DynaLoader/dl_hpux.xs
    Source file to use for dynamic loading [ext/DynaLoader/dl_dlopen.xs]

    Some systems may require passing special flags to gcc -c to
    compile modules that will be used to create a shared library.
    To use no flags, say "none".

    Any special flags to pass to gcc -c to compile shared library modules?
    [-fPIC]

    Some systems use ld to create libraries that can be dynamically loaded,
    while other systems (such as those using ELF) use gcc.

    You appear to have ELF support. I'll use gcc to build dynamic libraries.
    What command should be used to create dynamic libraries? [gcc]

    Some systems may require passing special flags to gcc to create a
    library that can be dynamically loaded. If your ld flags include
    -L/other/path options to locate libraries outside your loader's normal
    search path, you may need to specify those -L options here as well. To
    use no flags, say "none".

    Any special flags to pass to gcc to create a dynamically loaded library?
    [ -Wl,-E -G -L/usr/local/lib]

    Some systems may require passing special flags to gcc to indicate that
    the resulting executable will use dynamic linking. To use no flags,
    say "none".

    Any special flags to pass to gcc to use dynamic linking? [ -Wl,-E]

    The perl executable is normally obtained by linking perlmain.c with
    libperl.a, any static extensions (usually just DynaLoader), and
    any other libraries needed on this system (such as -lm, etc.). Since
    your system supports dynamic loading, it is probably possible to build
    a shared libperl.so. If you will have more than one executable linked
    to libperl.so, this will significantly reduce the size of each
    executable, but it may have a noticeable affect on performance. The
    default is probably sensible for your system.


    Build a shared libperl.so (y/n) [n]

    System manual is in /usr/share/man/man1.

    Perl5 has manual pages available in source form.
    If you don't want the manual sources installed, answer 'none'.

    Where do the main Perl5 manual pages (source) go? (~name ok)
    [/usr/local/share/man/man1]
    What suffix should be used for the main Perl5 man pages? [1]

    You can have filenames longer than 14 characters.

    Perl5 has manual pages for many of the library modules.
    If you don't want the manual sources installed, answer 'none'.

    Where do the perl5 library man pages (source) go? (~name ok)
    [/usr/local/share/man/man3]
    What suffix should be used for the perl5 library man pages? [3]

    Figuring out host name...
    Maybe "hostname" will work...
    Your host name appears to be "triumph". Right? [y]

    What is your domain name? [.somesite.somewhere]

    I need to get your e-mail address in Internet format if possible, i.e.
    something like . Please answer accurately since I have
    no easy means to double check it. The default value provided below
    is most probably close to reality but may not be valid from outside
    your organization...

    What is your e-mail address? []

    If you or somebody else will be maintaining perl at your site, please
    fill in the correct e-mail address here so that they may be contacted
    if necessary. Currently, the "perlbug" program included with perl
    will send mail to this address in addition to . You may
    enter "none" for no administrator.

    Perl administrator e-mail address []

    Do you want to install only the version-specific parts of the perl
    distribution? Usually you do *not* want to do this.
    Do you want to install only the version-specific parts of perl? [n]

    I can use the #! construct to start perl on your system. This will
    make startup of perl scripts faster, but may cause problems if you
    want to share those scripts and perl is not in a standard place
    (/usr/local/bin/perl) on all your platforms. The alternative is to force
    a shell by starting the script with a single ':' character.

    What shall I put after the #! to start up perl ("none" to not use #!)?
    [/usr/local/bin/perl]
    I'll use #!/usr/local/bin/perl to start perl scripts.

    Some installations have a separate directory just for executable scripts
    so
    that they can mount it across multiple architectures but keep the scripts
    in
    one spot. You might, for example, have a subdirectory of /usr/share for
    this.
    Or you might just lump your scripts in with all your other executables.

    Where do you keep publicly executable scripts? (~name ok) [/usr/local/bin]
    Pathname where the add-on public executables should be installed? (~name
    ok)
    [/usr/local/bin]
    Pathname where the site-specific html pages should be installed? (~name
    ok)
    [none]
    Pathname where the site-specific library html pages should be installed?
    (~name ok)
    [none]
    Pathname where the site-specific manual pages should be installed? (~name
    ok)
    [/usr/local/share/man/man1]
    Pathname where the site-specific library manual pages should be installed?
    (~name ok)
    [/usr/local/share/man/man3]
    Pathname where add-on public executable scripts should be installed?
    (~name ok)
    [/usr/local/bin]

    Perl can be built to use 'fast stdio', which means using the stdio
    library but also directly manipulating the stdio buffers to enable
    faster I/O. Using stdio is better for backward compatibility (especially
    for Perl extensions), but on the other hand since Perl 5.8 the 'perlio'
    interface has been preferred instead of stdio.

    If this doesn't make any sense to you, just accept the default 'y'.
    Use the "fast stdio" if available? [y]

    Looking for the type used for lseek's offset on this system.
    off_t found.

    Checking to see how big your file offsets are...
    Your file offsets are 4 bytes long.

    Looking for the type for file position used by fsetpos().
    fpos_t found.

    Checking the size of fpos_t...
    Your fpos_t is 4 bytes long.

    Perl can be built to understand large files (files larger than 2
    gigabytes)
    on some systems. To do so, Configure can be run with -Duselargefiles.

    If this doesn't make any sense to you, just accept the default 'y'.
    Try to understand large files, if available? [y]
    Your platform has some specific hints regarding large file builds, using
    them...

    Rechecking to see how big your file offsets are...
    Your file offsets are now 8 bytes long.
    Rechecking the size of fpos_t... 8 bytes.

    qgcvt() found.

    Checking how to print long doubles...
    We will use %Lf.

    Checking for an efficient way to convert floats to strings.
    Trying gconvert...
    gconvert() found.
    I'll use gconvert to convert floats into a string.

    fwalk() NOT found.

    access() found.

    <unistd.h> defines the *_OK access constants.

    accessx() NOT found.

    aintl() NOT found.

    alarm() found.

    <pthread.h> found.

    <sys/types.h> found.

    <sys/select.h> found.

    Testing to see if we should include <time.h>, <sys/time.h> or both.
    I'm now running the test program....
    Succeeded with -DI_SYSTIME -DS_TIMEVAL
    We'll include <sys/time.h>.

    Checking to see if your struct tm has tm_zone field...
    No, it doesn't.

    Checking to see if your struct tm has tm_gmtoff field...
    No, it doesn't.

    asctime_r() found.
    asctime_r() prototype NOT found.

    *** WHOA THERE!!! ***
    The recommended value for $d_asctime_r_proto on this machine was
    "define"!
    Keep the recommended value? [y]
    Prototype: char* asctime_r(const struct tm*, char*);

    atolf() NOT found.

    atoll() found.

    Checking whether your compiler can handle __attribute__ ...
    Your C compiler supports __attribute__.

    bcmp() found.

    bcopy() found.

    <unistd.h> found.

    getpgrp() found.

    Checking to see which flavor of getpgrp is in use...
    (I see you are running Configure as super-user...)
    You have to use getpgrp() instead of getpgrp(pid).

    setpgrp() found.

    Checking to see which flavor of setpgrp is in use...
    (I see you are running Configure as super-user...)
    You have to use setpgrp() instead of setpgrp(pid,pgrp).

    bzero() found.

    You have void (*signal())().

    Checking whether your C compiler can cast large floats to int32.
    Yup, it can.

    Checking whether your C compiler can cast negative float to unsigned.
    Yup, it can.

    vprintf() found.
    Your vsprintf() returns (int).

    chown() found.

    chroot() found.

    chsize() NOT found.

    class() NOT found.

    Hmm... Looks like you have Berkeley networking support.

    socketpair() found.

    Checking the availability of certain socket constants...

    <sys/uio.h> found.

    Checking to see if your system supports struct cmsghdr...
    Yes, it does.

    Checking to see if your C compiler knows about "const"...
    Yup, it does.

    copysignl() NOT found.


    crypt() found.

    <crypt.h> found.

    crypt_r() NOT found.

    ctermid_r() found.
    Prototype: char* ctermid_r(char*);

    ctime_r() found.
    ctime_r() prototype NOT found.

    *** WHOA THERE!!! ***
    The recommended value for $d_ctime_r_proto on this machine was
    "define"!
    Keep the recommended value? [y]
    Prototype: char* ctime_r(const time_t*, char*);

    cuserid() found.

    <limits.h> found.

    <float.h> found.

    DBL_DIG found.

    dbmclose() found.

    <dbm.h> NOT found.

    <rpcsvc/dbm.h> found.

    dbminit() prototype NOT found.

    difftime() found.

    <dirent.h> found.

    Your directory entries are struct dirent.

    Your directory entry does not know about the d_namlen field.

    <sys/dir.h> NOT found.

    <sys/ndir.h> NOT found.

    dirfd() NOT found.

    dlerror() found.

    <dlfcn.h> found.

    On a few systems, the dynamically loaded modules that perl generates and
    uses
    will need a different extension than shared libs. The default will
    probably
    be appropriate.

    What is the extension of dynamically loaded modules [so]

    Checking whether your dlsym() needs a leading underscore ...
    dlsym doesn't need a leading underscore.

    drand48_r() NOT found.

    drand48() prototype found.

    dup2() found.

    eaccess() NOT found.

    endgrent() found.

    <grp.h> found.

    endgrent_r() NOT found.

    endhostent() found.

    <netdb.h> found.

    endhostent_r() NOT found.

    endnetent() found.

    endnetent_r() NOT found.

    endprotoent() found.

    endprotoent_r() NOT found.

    endpwent() found.

    <pwd.h> found.

    endpwent_r() NOT found.

    endservent() found.

    endservent_r() NOT found.

    <fcntl.h> defines the O_* constants...
    and you have the 3 argument form of open().

    Using <string.h> instead of <strings.h>.

    <sys/file.h> found.

    We won't be including <sys/file.h>.

    <fcntl.h> found.

    We'll be including <fcntl.h>.

    Figuring out the flag used by open() for non-blocking I/O...
    Seems like we can use O_NONBLOCK.

    Let's see what value errno gets from read() on a O_NONBLOCK file...
    A read() system call with no data present returns -1.
    Your read() sets errno to EAGAIN when no data is available.
    And it correctly returns 0 to signal EOF.

    Checking how std your stdio is...
    Your stdio acts pretty std.
    Checking to see what happens if we set the stdio ptr...
    Increasing ptr in your stdio leaves cnt unchanged. Good.
    And its _base field acts std.
    You seem to have 'fast stdio' to directly manipulate the stdio buffers.

    fchdir() found.

    fchmod() found.

    fchown() found.

    fcntl() found.

    Checking if fcntl-based file locking works...
    Yes, it seems to work.

    Checking to see how well your C compiler handles fd_set and friends ...
    Well, your system knows about the normal fd_set typedef...
    and you have the normal fd_set macros (just as I'd expect).

    fgetpos() found.

    finite() found.

    finitel() NOT found.

    flock() NOT found.

    flock() prototype NOT found.

    fork() found.

    fp_class() NOT found.

    pathconf() found.

    fpathconf() found.

    fpclass() found.

    fpclassify() NOT found.

    fpclassl() NOT found.

    Checking to see if you have fpos64_t...
    You have fpos64_t.

    frexpl() NOT found.

    <sys/param.h> found.

    <sys/mount.h> found.

    Checking to see if your system supports struct fs_data...
    No, it doesn't.

    fseeko() found.

    fsetpos() found.

    fstatfs() found.

    statvfs() found.

    fstatvfs() found.

    fsync() found.

    ftello() found.

    getcwd() found.

    getespwnam() NOT found.

    getfsstat() NOT found.

    getgrent() found.

    getgrent_r() found.
    getgrent_r() prototype found.
    Prototype: struct group* getgrent_r(struct group*, char*, int);

    getgrgid_r() found.
    getgrgid_r() prototype found.
    Prototype: struct group* getgrgid_r(gid_t, struct group*, char*, int);

    getgrnam_r() found.
    getgrnam_r() prototype found.
    Prototype: struct group* getgrnam_r(const char*, struct group*, char*,
    int);

    gethostbyaddr() found.

    gethostbyname() found.

    gethostent() found.

    gethostname() found.
    uname() found.

    Every now and then someone has a gethostname() that lies about the
    hostname
    but can't be fixed for political or economic reasons. If you wish, I can
    pretend gethostname() isn't there and maybe compute hostname at run-time
    thanks to the 'hostname' command.

    Shall I ignore gethostname() from now on? [n] y
    Okay...I'll use 'popen("/usr/bin/hostname", "r")' to get your hostname.

    gethostbyaddr_r() found.
    Prototype: struct hostent* gethostbyaddr_r(const char*, int, int, struct
    hostent*, char*, int, int*);

    gethostbyname_r() found.
    Prototype: struct hostent* gethostbyname_r(const char*, struct hostent*,
    char*, int, int*);

    gethostent_r() found.
    gethostent_r() prototype found.
    Prototype: struct hostent* gethostent_r(struct hostent*, char*, int,
    int*);

    gethostent() prototype found.

    getitimer() found.

    getlogin() found.

    getlogin_r() found.
    getlogin_r() prototype NOT found.

    *** WHOA THERE!!! ***
    The recommended value for $d_getlogin_r_proto on this machine was
    "define"!
    Keep the recommended value? [y]
    Prototype: int getlogin_r(char*, size_t);

    getmnt() NOT found.

    getmntent() found.

    getnetbyaddr() found.

    getnetbyname() found.

    getnetent() found.

    getnetbyaddr_r() found.
    getnetbyaddr_r() prototype found.
    Prototype: struct netent* getnetbyaddr_r(long, int, struct netent*, char*,
    int);

    getnetbyname_r() found.
    Prototype: struct netent* getnetbyname_r(const char*, struct netent*,
    char*, int);

    getnetent_r() found.
    getnetent_r() prototype found.
    Prototype: struct netent* getnetent_r(struct netent*, char*, int);

    getnetent() prototype found.

    getpagesize() found.

    getprotobyname() found.

    getprotobynumber() found.

    getprotoent() found.

    getpgid() found.

    getpgrp2() NOT found.

    getppid() found.

    getpriority() found.

    getprotobyname_r() found.
    Prototype: struct protoent* getprotobyname_r(const char*, struct
    protoent*, char*, int);

    getprotobynumber_r() found.
    Prototype: struct protoent* getprotobynumber_r(int, struct protoent*,
    char*, int);

    getprotoent_r() found.
    getprotoent_r() prototype found.
    Prototype: struct protoent* getprotoent_r(struct protoent*, char*, int);

    getprotoent() prototype found.

    getprpwnam() NOT found.

    getpwent() found.

    getpwent_r() found.
    getpwent_r() prototype found.
    Prototype: struct passwd* getpwent_r(struct passwd*, char*, int);

    getpwnam_r() found.
    getpwnam_r() prototype found.
    Prototype: struct passwd* getpwnam_r(const char*, struct passwd*, char*,
    int);

    getpwuid_r() found.
    getpwuid_r() prototype found.
    Prototype: struct passwd* getpwuid_r(uid_t, struct passwd*, char*, int);

    getservbyname() found.

    getservbyport() found.

    getservent() found.

    getservbyname_r() found.
    Prototype: struct servent* getservbyname_r(const char*, const char*,
    struct servent*, char*, int);

    getservbyport_r() found.
    Prototype: struct servent* getservbyport_r(int, const char*, struct
    servent*, char*, int);

    getservent_r() found.
    getservent_r() prototype found.
    Prototype: struct servent* getservent_r(struct servent*, char*, int);

    getservent() prototype found.

    getspnam() found.

    <shadow.h> found.

    getspnam_r() found.
    getspnam_r() prototype found.
    Prototype: struct spwd* getspnam_r(const char*, struct spwd*, char*, int);

    gettimeofday() found.

    gmtime_r() found.
    gmtime_r() prototype NOT found.

    *** WHOA THERE!!! ***
    The recommended value for $d_gmtime_r_proto on this machine was
    "define"!
    Keep the recommended value? [y]
    Prototype: struct tm* gmtime_r(const time_t*, struct tm*);

    hasmntopt() found.

    <netinet/in.h> found.

    <arpa/inet.h> found.

    htonl() found.

    ilogbl() NOT found.

    strchr() found.

    inet_aton() NOT found.

    isascii() found.

    isfinite() NOT found.

    isinf() NOT found.

    isnan() found.

    isnanl() NOT found.

    killpg() found.

    lchown() found.

    LDBL_DIG found.

    <math.h> found.

    Checking to see if your libm supports _LIB_VERSION...
    No, it does not (probably harmless)


    link() found.

    localtime_r() found.
    localtime_r() prototype NOT found.

    *** WHOA THERE!!! ***
    The recommended value for $d_localtime_r_proto on this machine was
    "define"!
    Keep the recommended value? [y]
    Prototype: struct tm* localtime_r(const time_t*, struct tm*);

    localeconv() found.

    lockf() found.

    lseek() prototype found.

    lstat() found.

    madvise() found.

    mblen() found.

    mbstowcs() found.

    mbtowc() found.

    memchr() found.

    memcmp() found.

    memcpy() found.

    memmove() found.

    memset() found.

    mkdir() found.

    mkdtemp() NOT found.

    mkfifo() found.

    mkstemp() found.

    mkstemps() NOT found.

    mktime() found.

    <sys/mman.h> found.

    mmap() found.
    and it returns (caddr_t).

    sqrtl() NOT found.

    scalbnl() NOT found.

    modfl() NOT found.

    modfl() prototype NOT found.

    mprotect() found.

    msgctl() found.

    msgget() found.

    msgsnd() found.

    msgrcv() found.

    You have the full msg*(2) library.

    Checking to see if your system supports struct msghdr...
    Yes, it does.

    msync() found.

    munmap() found.

    nice() found.

    <langinfo.h> found.

    nl_langinfo() found.

    Checking to see how big your characters are (hey, you never know)...
    What is the size of a character (in bytes)? [1]

    Checking to see if your C compiler knows about "volatile"...
    Yup, it does.

    Choosing the C types to be used for Perl's internal types...
    (IV will be long, 4 bytes)
    (UV will be unsigned long, 4 bytes)
    (NV will be double, 8 bytes)
    Checking how many bits of your UVs your NVs can preserve...
    Your NVs can preserve all 32 bits of your UVs.

    Checking to see if you have off64_t...
    You have off64_t.

    Checking what constant to use for creating joinable pthreads...
    You seem to use PTHREAD_CREATE_JOINABLE.

    pause() found.

    pipe() found.

    poll() found.

    readlink() found.

    pthread_atfork found.

    pthread_attr_setscope() found.
    sched_yield() NOT found.
    pthread_yield() NOT found.

    random_r() NOT found.

    readdir() found.

    seekdir() found.

    telldir() found.

    rewinddir() found.

    readdir64_r() found.
    Prototype: int readdir64_r(DIR*, struct dirent64*, struct dirent64**);

    readdir_r() found.
    Prototype: int readdir_r(DIR*, struct dirent*, struct dirent**);

    readv() found.

    recvmsg() found.

    rename() found.

    rmdir() found.

    <memory.h> found.

    We won't be including <memory.h>.

    I'll use memmove() instead of bcopy() for overlapping copies.

    I'll use memmove() instead of memcpy() for overlapping copies.

    Checking if your memcmp() can compare relative magnitude...
    Yes, it can.

    sbrk() prototype found.

    select() found.

    semctl() found.

    semget() found.

    semop() found.

    You have the full sem*(2) library.

    You do not have union semun in <sys/sem.h>.

    You can use union semun for semctl IPC_STAT.
    You cannot use struct semid_ds* for semctl IPC_STAT.

    sendmsg() found.

    setegid() found.

    seteuid() found.

    setgrent() found.

    setgrent_r() NOT found.

    sethostent() found.

    sethostent_r() NOT found.

    setitimer() found.

    setlinebuf() found.

    setlocale() found.

    <locale.h> found.

    setlocale_r() NOT found.

    setnetent() found.

    setnetent_r() NOT found.

    setprotoent() found.

    setpgid() found.

    setpgrp2() NOT found.

    setpriority() found.

    setproctitle() NOT found.

    setprotoent_r() NOT found.

    setpwent() found.

    setpwent_r() NOT found.

    setregid() found.

    setresgid() NOT found.

    setreuid() found.

    setresuid() NOT found.

    setrgid() NOT found.

    setruid() NOT found.

    setservent() found.

    setservent_r() NOT found.

    setsid() found.

    setvbuf() found.

    <sfio.h> NOT found.

    shmctl() found.

    shmget() found.

    shmat() found.
    and it returns (void *).

    shmdt() found.

    You have the full shm*(2) library.

    sigaction() found.

    sigprocmask() found.

    POSIX sigsetjmp found.

    sockatmark() NOT found.

    sockatmark() prototype NOT found.

    socks5_init() NOT found.

    srand48_r() NOT found.

    srandom_r() NOT found.

    setresgid() prototype NOT found.

    setresuid() prototype NOT found.

    <sys/stat.h> found.

    Checking to see if your struct stat has st_blocks field...

    <sys/vfs.h> found.

    <sys/statfs.h> found.

    Checking to see if your system supports struct statfs...
    Yes, it does.

    Checking to see if your struct statfs has f_flags field...
    No, it doesn't.
    Checking how to access stdio streams by file descriptor number...
    You can access stdio streams by file descriptor number by the __iob array.

    strcoll() found.

    Checking to see if your C compiler can copy structs...
    Yup, it can.

    strerror() found.
    (You also have sys_errlist[], so we could roll our own strerror.)

    strerror_r() NOT found.

    strftime() found.

    strlcat() found.

    strlcpy() found.

    strtod() found.

    strtol() found.

    strtold() NOT found.

    strtoll() found.
    Checking whether your strtoll() works okay...
    Your strtoll() seems to be working okay.

    strtoq() NOT found.

    strtoul() found.
    Checking whether your strtoul() works okay...
    Your strtoul() seems to be working okay.

    strtoull() found.
    Checking whether your strtoull() works okay...
    Your strtoull() seems to be working okay.

    strtouq() NOT found.

    strxfrm() found.

    symlink() found.

    syscall() found.

    syscall() prototype NOT found.

    sysconf() found.

    system() found.

    tcgetpgrp() found.

    tcsetpgrp() found.

    telldir() prototype found.

    time() found.

    Looking for the type returned by time() on this system.
    time_t found.

    <sys/times.h> found.

    times() found.

    Looking for the type returned by times() on this system.
    clock_t found.

    tmpnam_r() found.
    Prototype: char* tmpnam_r(char*);

    truncate() found.

    ttyname_r() found.
    Prototype: int ttyname_r(int, char*, size_t);

    tzname[] found.

    In the following, larger digits indicate more significance. A big-endian
    machine like a Pyramid or a Motorola 680?0 chip will come out to 4321. A
    little-endian machine like a Vax or an Intel 80?86 chip would be 1234.
    Other
    machines may have weird orders like 3412. A Cray will report 87654321,
    an Alpha will report 12345678. If the test program works the default is
    probably right.
    I'm now running the test program...
    (The test program ran ok.)
    byteorder=4321

    Checking to see whether you can access character data unalignedly...
    (Testing for character data alignment may crash the test. That's okay.)
    It seems that you must access character data in an aligned manner.

    ualarm() found.

    umask() found.

    unordered() found.

    usleep() found.

    usleep() prototype found.

    ustat() found.

    vfork() found.


    Perl can only use a vfork() that doesn't suffer from strict
    restrictions on calling functions or modifying global data in
    the child. For example, glibc-2.1 contains such a vfork()
    that is unsuitable. If your system provides a proper fork()
    call, chances are that you do NOT want perl to use vfork().

    Do you still want to use vfork()? [n]
    Ok, we won't use vfork().

    closedir() found.

    Checking whether closedir() returns a status...
    Yes, it does.

    wait4() found.

    waitpid() found.

    wcstombs() found.

    wctomb() found.

    writev() found.

    Checking alignment constraints...
    Doubles must be aligned on a how-many-byte boundary? [8]

    Checking to see how your cpp does stuff like concatenate tokens...
    Oh! Smells like ANSI's been here.
    We can catify or stringify, separately or together!

    <db.h> NOT found.

    Looking for a random number function...
    Good, found drand48().

    Use which function to generate random numbers? [drand48]

    Determining whether or not we are on an EBCDIC system...
    Nope, no EBCDIC, probably ASCII or some ISO Latin. Or UTF-8.

    Checking how to flush all pending stdio output...
    Your fflush(NULL) works okay for output streams.
    Let's see if it clobbers input pipes...
    Ouch, fflush(NULL) clobbers input pipes! We will not use it.
    All is futile. Even fflush(stdin) clobbers input pipes!
    OK, I give up. I cannot figure out how to flush pending stdio output.
    We won't be flushing handles at all before fork/exec/popen.

    Looking for the type for group ids returned by getgid().
    gid_t found.

    Checking the size of gid_t...
    Your gid_t is 4 bytes long.

    Checking the sign of gid_t...
    Your gid_t is signed.

    Checking how to print 64-bit integers...
    We will use the %lld style.

    Checking the format strings to be used for Perl's internal types...

    Checking the format string to be used for gids...

    getgroups() found.

    setgroups() found.

    What type of pointer is the second argument to getgroups() and
    setgroups()?
    Usually this is the same as group ids, gid_t, but not always.

    What type pointer is the second argument to getgroups() and setgroups()?
    [gid_t]

    Checking if your /usr/bin/make program sets $(MAKE)...
    Yup, it does.

    Looking for the type used for file modes for system calls (e.g. fchmod()).
    mode_t found.

    <stdarg.h> found.

    <varargs.h> found.

    We'll include <stdarg.h> to get va_dcl definition.

    It seems that you don't need va_copy().

    Looking for the type used for the length parameter for string functions.
    size_t found.

    Checking to see what type of arguments are accepted by gethostbyaddr().
    Your system accepts const char * for the first arg.
    ....and int for the second arg.

    Checking to see what type of argument is accepted by gethostbyname().
    Your system accepts const char *.

    Checking to see what type of 1st argument is accepted by getnetbyaddr().
    Your system accepts in_addr_t.

    What pager is used on your system? [/usr/bin/less]

    Looking for the type of process ids on this system.
    pid_t found.

    Checking how to generate random libraries on your machine...
    /usr/bin/ar appears to generate random libraries itself.

    Checking to see what type of arguments are accepted by select().
    Your system accepts fd_set *.

    Checking to see on how many bits at a time your select() operates...
    Your select() operates on 32 bits at a time.

    Generating a list of signal names and numbers...
    The following 46 signals are available:

    SIGZERO SIGHUP SIGINT SIGQUIT SIGILL SIGTRAP SIGABRT SIGEMT SIGFPE
    SIGKILL SIGBUS SIGSEGV SIGSYS SIGPIPE SIGALRM SIGTERM SIGUSR1 SIGUSR2
    SIGCHLD SIGPWR SIGWINCH SIGURG SIGIO SIGSTOP SIGTSTP SIGCONT SIGTTIN
    SIGTTOU SIGVTALRM SIGPROF SIGXCPU SIGXFSZ SIGWAITING SIGLWP SIGFREEZE
    SIGTHAW SIGCANCEL SIGLOST SIGRTMIN SIGNUM39 SIGNUM40 SIGNUM41
    SIGNUM42 SIGNUM43 SIGNUM44 SIGRTMAX SIGIOT SIGCLD SIGPOLL

    Checking the size of size_t...
    Your size_t size is 4 bytes.

    Checking to see if you have socklen_t...
    You have socklen_t.

    <socks.h> NOT found.

    Checking to see what type is the last argument of accept().
    What is the type for socket address structure sizes? [int]

    I'll be using ssize_t for functions returning a byte count.

    Your stdio uses unsigned chars.

    Looking for the type for user ids returned by getuid().
    uid_t found.

    Checking the size of uid_t...
    Your uid_t is 4 bytes long.

    Checking the sign of uid_t...
    Your uid_t is signed.

    Checking the format string to be used for uids...

    Which compiler compiler (yacc) shall I use? [yacc]

    <fp.h> NOT found.

    <fp_class.h> NOT found.

    <ieeefp.h> found.

    <libutil.h> NOT found.

    <mach/cthreads.h> NOT found.

    <mntent.h> NOT found.

    <ndbm.h> found.

    dbm_open() found.

    <net/errno.h> NOT found.

    <netinet/tcp.h> found.

    <poll.h> found.

    <prot.h> NOT found.

    Guessing which symbols your C compiler and preprocessor define...
    Your C compiler and pre-processor define these symbols:
    __GCC_NEW_VARARGS__
    __GNUC__
    __SVR4
    sparc
    sun
    unix

    Your C pre-processor also defines the following symbols:
    _BIG_ENDIAN
    _FILE_OFFSET_BITS
    __GNUC_MINOR__
    _ILP32
    _LARGEFILE64_SOURCE
    _LARGEFILE_SOURCE
    __STDC__
    __sparc
    __sparc__
    __sun
    __sun__
    __svr4__
    __unix
    __unix__

    Your C compiler further defines the following cpp symbols:
    __GNUC_MINOR__=95
    __sparc
    __sparc__
    __sun
    __sun__
    __svr4__
    __unix
    __unix__
    cpu=sparc
    machine=sparc
    system=svr4
    system=unix

    tcsetattr() found.

    You have POSIX termios.h... good!

    <stddef.h> found.

    <sunmath.h> NOT found.

    <sys/access.h> NOT found.

    <sys/filio.h> found.

    <sys/ioctl.h> found.

    You have socket ioctls defined in <sys/sockio.h>.

    <syslog.h> found.

    <sys/mode.h> found.

    <sys/resource.h> found.

    <sys/security.h> NOT found.

    <sys/statvfs.h> found.

    <sys/un.h> found.

    <sys/utsname.h> found.

    <sys/wait.h> found.

    <ustat.h> found.

    <utime.h> found.

    <values.h> found.

    <gdbm.h> NOT found.

    Looking for extensions...
    A number of extensions are supplied with perl5. You may choose to
    compile these extensions for dynamic loading (the default), compile
    them into the perl5 executable (static loading), or not include
    them at all. Answer "none" to include no extensions.
    Note that DynaLoader is always built and need not be mentioned here.

    What extensions do you wish to load dynamically?
    [B ByteLoader Cwd Data/Dumper Devel/DProf Devel/PPPort Devel/Peek
    Digest/MD5 Encode Fcntl File/Glob Filter/Util/Call I18N/Langinfo IO
    IPC/SysV List/Util MIME/Base64 NDBM_File ODBM_File Opcode POSIX
    PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable
    Sys/Hostname Sys/Syslog Time/HiRes Unicode/Normalize XS/APItest XS/Typemap
    attrs re threads threads/shared]
    What extensions do you wish to load statically? [none]


    End of configuration questions.


    Stripping down executable paths...

    Creating config.sh...

    If you'd like to make any changes to the config.sh file before I begin
    to configure things, do it as a shell escape now (e.g. !vi config.sh).

    Press return or use a shell escape to edit config.sh:

    Doing variable substitutions on .SH files...
    Extracting cflags (with variable substitutions)
    Extracting config.h (with variable substitutions)
    Extracting makeaperl (with variable substitutions)
    Extracting makedepend (with variable substitutions)
    Extracting makedir (with variable substitutions)
    Extracting Makefile (with variable substitutions)
    Extracting myconfig (with variable substitutions)
    Extracting pod/Makefile (with variable substitutions)
    Extracting Policy.sh (with variable substitutions)
    Extracting writemain (with variable substitutions)
    Extracting x2p/cflags (with variable substitutions)
    Extracting x2p/Makefile (with variable substitutions)

    Now you need to generate make dependencies by running "make depend".
    You might prefer to run it in background: "make depend > makedepend.out &"
    It can take a while, so you might not want to run it right now.

    Run make depend now? [y]
    sh ./makedepend MAKE=make
    make: Warning: Both `makefile' and `Makefile' exist
    Current working directory /array/tmp/perl-5.8.7
    sh writemain lib/auto/DynaLoader/DynaLoader.a > writemain.tmp
    sh mv-if-diff writemain.tmp perlmain.c
    cp op.c opmini.tmp
    sh mv-if-diff opmini.tmp opmini.c
    echo av.c scope.c op.c doop.c doio.c dump.c hv.c mg.c reentr.c perl.c
    perly.c pp.c pp_hot.c pp_ctl.c pp_sys.c regcomp.c regexec.c utf8.c gv.c
    sv.c taint.c toke.c util.c deb.c run.c universal.c xsutils.c pad.c
    globals.c perlio.c perlapi.c numeric.c locale.c pp_pack.c pp_sort.c
    miniperlmain.c perlmain.c opmini.c | tr ' ' '\n' >.clist
    Finding dependencies for av.o.
    Finding dependencies for scope.o.
    Finding dependencies for op.o.
    Finding dependencies for doop.o.
    Finding dependencies for doio.o.
    Finding dependencies for dump.o.
    Finding dependencies for hv.o.
    Finding dependencies for mg.o.
    Finding dependencies for reentr.o.
    Finding dependencies for perl.o.
    Finding dependencies for perly.o.
    Finding dependencies for pp.o.
    Finding dependencies for pp_hot.o.
    Finding dependencies for pp_ctl.o.
    Finding dependencies for pp_sys.o.
    Finding dependencies for regcomp.o.
    Finding dependencies for regexec.o.
    Finding dependencies for utf8.o.
    Finding dependencies for gv.o.
    Finding dependencies for sv.o.
    Finding dependencies for taint.o.
    Finding dependencies for toke.o.
    Finding dependencies for util.o.
    Finding dependencies for deb.o.
    Finding dependencies for run.o.
    Finding dependencies for universal.o.
    Finding dependencies for xsutils.o.
    Finding dependencies for pad.o.
    Finding dependencies for globals.o.
    Finding dependencies for perlio.o.
    Finding dependencies for perlapi.o.
    Finding dependencies for numeric.o.
    Finding dependencies for locale.o.
    Finding dependencies for pp_pack.o.
    Finding dependencies for pp_sort.o.
    Finding dependencies for miniperlmain.o.
    Finding dependencies for perlmain.o.
    Finding dependencies for opmini.o.
    make: Warning: Both `makefile' and `Makefile' exist
    Current working directory /array/tmp/perl-5.8.7
    echo Makefile.SH cflags.SH config_h.SH makeaperl.SH makedepend.SH
    makedir.SH myconfig.SH writemain.SH pod/Makefile.SH | tr ' ' '\n' >.shlist
    Updating makefile...
    test -s perlmain.c && touch perlmain.c
    cd x2p; make depend
    sh ../makedepend MAKE=make
    make: Warning: Both `makefile' and `Makefile' exist
    Current working directory /array/tmp/perl-5.8.7/x2p
    echo hash.c str.c util.c walk.c | tr ' ' '\n' >.clist
    Finding dependencies for hash.o.
    Finding dependencies for str.o.
    Finding dependencies for util.o.
    Finding dependencies for walk.o.
    make: Warning: Both `makefile' and `Makefile' exist
    Current working directory /array/tmp/perl-5.8.7/x2p
    echo Makefile.SH cflags.SH | tr ' ' '\n' >.shlist
    Updating makefile...
    Now you must run 'make'.

    If you compile perl5 on a different machine or from a different object
    directory, copy the Policy.sh file from this object directory to the
    new one before you run Configure -- this will help you with most of
    the policy defaults.

    sh-2.03# make
    make: Warning: Both `makefile' and `Makefile' exist
    `sh cflags "optimize='-O'" miniperlmain.o` miniperlmain.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" perl.o` perl.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" gv.o` gv.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" toke.o` toke.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" perly.o` perly.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" op.o` op.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" pad.o` pad.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" regcomp.o` regcomp.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" dump.o` dump.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" util.o` util.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" mg.o` mg.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" reentr.o` reentr.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" hv.o` hv.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" av.o` av.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" run.o` run.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" pp_hot.o` pp_hot.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" sv.o` sv.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" pp.o` pp.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" scope.o` scope.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" pp_ctl.o` pp_ctl.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" pp_sys.o` pp_sys.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    pp_sys.c: In function `Perl_pp_readdir':
    pp_sys.c:3861: warning: implicit declaration of function `readdir_r'
    pp_sys.c: In function `Perl_pp_gmtime':
    pp_sys.c:4470: warning: implicit declaration of function `localtime_r'
    pp_sys.c:4472: warning: implicit declaration of function `gmtime_r'
    pp_sys.c: In function `Perl_pp_getlogin':
    pp_sys.c:5566: warning: implicit declaration of function `getlogin_r'
    `sh cflags "optimize='-O'" doop.o` doop.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" doio.o` doio.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" regexec.o` regexec.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" utf8.o` utf8.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" taint.o` taint.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" deb.o` deb.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" universal.o` universal.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" xsutils.o` xsutils.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" globals.o` globals.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" perlio.o` perlio.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" perlapi.o` perlapi.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" numeric.o` numeric.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" locale.o` locale.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    `sh cflags "optimize='-O'" pp_pack.o` pp_pack.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    pp_pack.c: In function `S_next_symbol':
    pp_pack.c:703: warning: `allowed' might be used uninitialized in this
    function
    `sh cflags "optimize='-O'" pp_sort.o` pp_sort.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    rm -f libperl.a
    /usr/bin/ar rcu libperl.a perl.o gv.o toke.o perly.o op.o pad.o regcomp.o
    dump.o util.o mg.o reentr.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o
    pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o
    xsutils.o globals.o perlio.o perlapi.o numeric.o locale.o pp_pack.o
    pp_sort.o
    `sh cflags "optimize='-O'" opmini.o` -DPERL_EXTERNAL_GLOB opmini.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall
    gcc -L/usr/local/lib -o miniperl \
    miniperlmain.o opmini.o libperl.a -lsocket -lnsl -ldl -lm -lpthread
    -lc
    ../miniperl -w -Ilib -MExporter -e '<?>' || make minitest
    *** Error code 1 (ignored)
    ../miniperl -Ilib configpm --heavy=lib/Config_heavy.pl configpm.tmp
    sh mv-if-diff configpm.tmp lib/Config.pm
    ../miniperl -Ilib lib/lib_pm.PL
    Extracting lib.pm (with variable substitutions)
    AutoSplitting perl library
    ../miniperl -Ilib -e 'use AutoSplit; \
    autosplit_lib_modules(@ARGV)' lib/*.pm
    ../miniperl -Ilib -e 'use AutoSplit; \
    autosplit_lib_modules(@ARGV)' lib/*/*.pm
    make lib/re.pm
    make: Warning: Both `makefile' and `Makefile' exist
    Current working directory /array/tmp/perl-5.8.7
    cp ext/re/re.pm ext/re/re.tmp && sh mv-if-diff ext/re/re.tmp lib/re.pm
    ../miniperl minimod.pl > minimod.tmp
    sh mv-if-diff minimod.tmp lib/ExtUtils/Miniperl.pm
    touch lib/ExtUtils/Miniperl.pm
    cd lib/unicore && ../../miniperl -I../../lib mktables -w
    `sh cflags "optimize='-O'" perlmain.o` perlmain.c
    CCCMD = gcc -DPERL_CORE -c -fno-strict-aliasing -pipe
    -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O -Wall

    Making DynaLoader (static)
    Writing Makefile for DynaLoader
    .../../miniperl "-I../../lib" "-I../../lib" "-I../../lib" "-I../../lib"
    DynaLoader_pm.PL DynaLoader.pm
    .../../miniperl "-I../../lib" "-I../../lib" "-I../../lib" "-I../../lib"
    XSLoader_pm.PL XSLoader.pm
    cp XSLoader.pm ../../lib/XSLoader.pm
    cp DynaLoader.pm ../../lib/DynaLoader.pm
    AutoSplitting ../../lib/DynaLoader.pm (../../lib/auto/DynaLoader)
    gcc -o perl -L/usr/local/lib -Wl,-E perlmain.o
    lib/auto/DynaLoader/DynaLoader.a libperl.a `cat ext.libs` -lsocket -lnsl
    -ldl -lm -lpthread -lc
    gcc: lib/auto/DynaLoader/DynaLoader.a: No such file or directory
    *** Error code 1
    make: Fatal error: Command failed for target `perl'
    sh-2.03# exit

    script done on Thu Nov 17 15:22:31 2005

    --
    Kirt "Loki" Dankmyer -- http://ivanhoeunbound.com -- xiomBRAG on AIM
    cats * hats * RPGs * love * Eris * Agent Patriot * anime * Dada * poetry
    "Only ONE MAN can kill this many Russians. Bring his guitar to me!" -Death
    Kirt Loki Dankmyer, Nov 17, 2005
    #1
    1. Advertising

  2. Kirt Loki Dankmyer wrote:

    > Use which C compiler? [cc]
    > /usr/ucb/cc: language optional software package not installed
    >
    > Uh-oh, the C compiler 'cc' doesn't seem to be working.
    >
    > You seem to have a working gcc, though.
    > Would you like to use it? [y]
    >
    > *** However, any setting of the C compiler flags (e.g. for thread support)
    > *** has been lost. It may be necessary to pass -Dcc=gcc to Configure
    > *** (together with e.g. -Dusethreads).


    1. Get rid of /usr/ucb in your PATH; if you have the (free) Sun compilers add
    /opt/SUNWspro/bin to the PATH

    > NOTE: You are using GNU as(1). GNU as(1) might not build Perl. If you
    > have trouble, you can use /usr/ccs/bin/as by including -B/usr/ccs/bin/
    > in your gcc command. (Note that the trailing "/" is required.)
    >
    > Found GNU ld='/usr/local/sparc-sun-solaris2.8/bin/ld'
    >
    > NOTE: You are using GNU ld(1). GNU ld(1) might not build Perl. If you
    > have trouble, you can use /usr/ccs/bin/ld by including -B/usr/ccs/bin/
    > in your gcc command. (Note that the trailing "/" is required.)
    >
    > I will try to use GNU ld by passing in the -Wl,-E flag, but if that
    > doesn't work, you should use -B/usr/ccs/bin/ instead.


    2. Add /usr/ccs/bin to your path and/or try a version of gcc that uses
    Solaris ld + as


    > Checking for GNU cc in disguise and/or its version number...
    > You are using GNU cc 2.95.3 20010315 (release).


    3. Try a newer version of gcc; 2.95 is ancient. Or try the Sun Studio 11
    compilers (free).


    Hope that helps
    Oscar del Rio, Nov 17, 2005
    #2
    1. Advertising

  3. Kirt Loki Dankmyer

    PM Guest

    Short answer to your 2210-Liner :-(

    got to 'sunfreeware' or 'blastwave', pick the correct
    version for your OS an install it.
    The rest is waste of bandwidth!

    PM
    PM, Nov 18, 2005
    #3
  4. Kirt,

    from the error messages you get during the compile stage, this looks a
    lot like a broken perl version. Apparently, all that's going wrong is
    linking in stuff from lib/auto/DynaLoader/DynaLoader.a, which does not
    exist.

    Since you appear to have chosen the correct DynaLoader method for
    Solaris earlier on, I'd check if there is anything to make in lib/auto
    which hasn't been done yet. In this case, the generated Makefile would
    be the culprit.

    HTH, kind regards,
    - Thomas
    Thomas Hildebrandt - Sun Germany - ES - SSE, Nov 25, 2005
    #4
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. AleC
    Replies:
    1
    Views:
    814
    John D Groenveld
    Jan 27, 2004
  2. Michael Schmitt
    Replies:
    3
    Views:
    406
    Martin v. =?iso-8859-15?q?L=F6wis?=
    Sep 10, 2003
  3. Stefan
    Replies:
    2
    Views:
    525
    David Rock
    Apr 25, 2004
  4. ashish
    Replies:
    8
    Views:
    313
    Peter J. Holzer
    Nov 26, 2006
  5. Aftermath Fan
    Replies:
    1
    Views:
    162
    Tony Curtis
    Jul 27, 2007
Loading...

Share This Page